From be76644735ad3ef60f2a405fdee79036a5e9a76a Mon Sep 17 00:00:00 2001 From: Ben Siraphob Date: Sun, 20 Jun 2021 15:57:51 +0700 Subject: coqPackages.semantics: init --- pkgs/development/coq-modules/semantics/default.nix | 46 ++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 pkgs/development/coq-modules/semantics/default.nix (limited to 'pkgs/development/coq-modules/semantics/default.nix') diff --git a/pkgs/development/coq-modules/semantics/default.nix b/pkgs/development/coq-modules/semantics/default.nix new file mode 100644 index 00000000000..1fb01312e66 --- /dev/null +++ b/pkgs/development/coq-modules/semantics/default.nix @@ -0,0 +1,46 @@ +{ lib, mkCoqDerivation, coq, version ? null }: +with lib; + +mkCoqDerivation rec { + pname = "semantics"; + owner = "coq-community"; + releaseRev = v: "v${v}"; + + release."8.13.0".sha256 = "sha256-8bDr/Ovl6s8BFaRcHeS5H33/K/pYdeKfSN+krVuKulQ="; + release."8.11.1".sha256 = "sha256-jTPgcXSNn1G2mMDC7ocFcmqs8svB7Yo1emXP15iuxiU="; + release."8.9.0".sha256 = "sha256-UBsvzlDEZsZsVkbUI0GbFEhpxnnLCiaqlqDyWVC5I6s="; + release."8.8.0".sha256 = "sha256-k2nQyNw9KT3wY7bGy8KGILF44sLxkBYqdFpzFE9fgyw="; + release."8.7.0".sha256 = "sha256-k2nQyNw9KT3wY7bGy8KGILF44sLxkBYqdFpzFE9fgyw="; + release."8.6.0".sha256 = "sha256-GltkGQ3tJqUPAbdDkqqvKLLhMOap50XvGaCkjshiNdY="; + + inherit version; + defaultVersion = with versions; switch coq.coq-version [ + { case = isGe "8.13"; out = "8.13.0"; } + { case = "8.11"; out = "8.11.1"; } + { case = "8.9"; out = "8.9.0"; } + { case = "8.8"; out = "8.8.0"; } + { case = "8.7"; out = "8.7.0"; } + { case = "8.6"; out = "8.6.0"; } + ] null; + + mlPlugin = true; + extraBuildInputs = (with coq.ocamlPackages; [ num ocamlbuild ]); + + postPatch = '' + for p in Make Makefile.coq.local + do + substituteInPlace $p --replace "-libs nums" "-use-ocamlfind -package num" || true + done + ''; + + meta = { + description = "A survey of programming language semantics styles in Coq"; + longDescription = '' + A survey of semantics styles in Coq, from natural semantics through + structural operational, axiomatic, and denotational semantics, to + abstract interpretation + ''; + maintainers = with maintainers; [ siraben ]; + license = licenses.mit; + }; +} -- cgit 1.4.1