19 buildDunePackage rec {
23 src = fetchFromGitHub {
24 owner = "rems-project";
27 hash = "sha256-HY/rgWi0S7ZiAWZF0fVIRK6fpoJ7Xp5EQcxoPRCPJ5Y=";
30 minimalOCamlVersion = "4.08";
39 propagatedBuildInputs = [
50 rm -r aarch* # Remove code derived from non-bsd2 arm spec
51 rm -r snapshots # Some of this might be derived from stuff in the aarch dir, it builds fine without it
53 # `buildDunePackage` only builds the [pname] package
54 # This doesnt work in this case, as sail includes multiple packages in the same source tree
57 dune build --release ''${enableParallelBuild:+-j $NIX_BUILD_CORES}
62 dune runtest ''${enableParallelBuild:+-j $NIX_BUILD_CORES}
67 dune install --prefix $out --libdir $OCAMLFIND_DESTDIR
71 wrapProgram $out/bin/sail --set SAIL_DIR $out/share/sail
75 homepage = "https://github.com/rems-project/sail";
76 description = "A language for describing the instruction-set architecture (ISA) semantics of processors";
77 maintainers = with maintainers; [ genericnerdyusername ];
78 license = licenses.bsd2;