ocamlPackages.sail: init at 0.15
This commit is contained in:
parent
8205f9ac2f
commit
fc50807657
2 changed files with 81 additions and 0 deletions
79
pkgs/development/ocaml-modules/sail/default.nix
Normal file
79
pkgs/development/ocaml-modules/sail/default.nix
Normal file
|
@ -0,0 +1,79 @@
|
|||
{ lib
|
||||
, fetchFromGitHub
|
||||
, buildDunePackage
|
||||
, base64
|
||||
, omd
|
||||
, menhir
|
||||
, ott
|
||||
, linenoise
|
||||
, dune-site
|
||||
, pprint
|
||||
, makeWrapper
|
||||
, lem
|
||||
, z3
|
||||
, linksem
|
||||
, num
|
||||
}:
|
||||
|
||||
buildDunePackage rec {
|
||||
pname = "sail";
|
||||
version = "0.15";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rems-project";
|
||||
repo = "sail";
|
||||
rev = version;
|
||||
hash = "sha256-eNdFOSzkniNvSCZeORRJ/IYAu+9P4HSouwmhd4BQLPk=";
|
||||
};
|
||||
|
||||
duneVersion = "3";
|
||||
minimalOCamlVersion = "4.08";
|
||||
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
ott
|
||||
menhir
|
||||
lem
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
base64
|
||||
omd
|
||||
dune-site
|
||||
linenoise
|
||||
pprint
|
||||
linksem
|
||||
];
|
||||
|
||||
preBuild = ''
|
||||
rm -r aarch* # Remove code derived from non-bsd2 arm spec
|
||||
rm -r snapshots # Some of this might be derived from stuff in the aarch dir, it builds fine without it
|
||||
'';
|
||||
# `buildDunePackage` only builds the [pname] package
|
||||
# This doesnt work in this case, as sail includes multiple packages in the same source tree
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
dune build --release ''${enableParallelBuild:+-j $NIX_BUILD_CORES}
|
||||
runHook postBuild
|
||||
'';
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
dune runtest ''${enableParallelBuild:+-j $NIX_BUILD_CORES}
|
||||
runHook postCheck
|
||||
'';
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
dune install --prefix $out --libdir $OCAMLFIND_DESTDIR
|
||||
runHook postInstall
|
||||
'';
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/sail --set SAIL_DIR $out/share/sail
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/rems-project/sail";
|
||||
description = "A language for describing the instruction-set architecture (ISA) semantics of processors";
|
||||
maintainers = with maintainers; [ genericnerdyusername ];
|
||||
license = licenses.bsd2;
|
||||
};
|
||||
}
|
|
@ -1244,6 +1244,8 @@ let
|
|||
|
||||
rusage = callPackage ../development/ocaml-modules/rusage { };
|
||||
|
||||
sail = callPackage ../development/ocaml-modules/sail { };
|
||||
|
||||
samplerate = callPackage ../development/ocaml-modules/samplerate { };
|
||||
|
||||
secp256k1 = callPackage ../development/ocaml-modules/secp256k1 {
|
||||
|
|
Loading…
Reference in a new issue