Add coqPackages.stdlib
This commit is contained in:
parent
0fb1b7d80c
commit
629830c8ff
@ -1,4 +1,4 @@
|
||||
{ lib, mkCoqDerivation, coq, version ? null }:
|
||||
{ lib, mkCoqDerivation, coq, stdlib, version ? null }:
|
||||
|
||||
mkCoqDerivation rec {
|
||||
pname = "coq-ext-lib";
|
||||
@ -33,6 +33,8 @@ mkCoqDerivation rec {
|
||||
release."0.9.4".sha256 = "1y66pamgsdxlq2w1338lj626ln70cwj7k53hxcp933g8fdsa4hp0";
|
||||
releaseRev = v: "v${v}";
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
|
||||
meta = {
|
||||
description = "Collection of theories and plugins that may be useful in other Coq developments";
|
||||
maintainers = with lib.maintainers; [ jwiegley ptival ];
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -25,4 +26,6 @@ mkCoqDerivation {
|
||||
release."20230107".sha256 = "sha256-YMBzVIsLkIC+w2TeyHrKe29eWLIxrH3wIMZqhik8p9I=";
|
||||
release."20200131".rev = "203d4c20211d6b17741f1fdca46dbc091f5e961a";
|
||||
release."20200131".sha256 = "0xylkdmb2dqnnqinf3pigz4mf4zmczcbpjnn59g5g76m7f2cqxl0";
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
}
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
let
|
||||
@ -32,6 +33,7 @@ let
|
||||
"20211230".sha256 = "sha256-+ntl4ykkqJWEeJJzt6fO5r0X1J+4in2LJIj1N8R175w="; # coq 8.7 - 8.18
|
||||
"20200624".sha256 = "sha256-8lMqwmOsqxU/45Xr+GeyU2aIjrClVdv3VamCCkF76jY="; # coq 8.7 - 8.13
|
||||
};
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
preBuild = "cd coq-menhirlib/src";
|
||||
meta = with lib; {
|
||||
homepage = "https://gitlab.inria.fr/fpottier/menhir/-/tree/master/coq-menhirlib";
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -31,4 +32,6 @@ mkCoqDerivation {
|
||||
release."20210328".sha256 = "sha256:1y5r1zm3hli10ah6lnj7n8hxad6rb6rgldd0g7m2fjibzvwqzhdg";
|
||||
release."20181102".rev = "82a85b7ec07e71fa6b30cfc05f6a7bfb09ef2510";
|
||||
release."20181102".sha256 = "08zry20flgj7qq37xk32kzmg4fg6d4wi9m7pf9aph8fd3j2a0b5v";
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
}
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -97,6 +98,8 @@ mkCoqDerivation {
|
||||
|
||||
mlPlugin = true;
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Coq plugin providing tactics for rewriting universally quantified equations";
|
||||
longDescription = ''
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -23,6 +24,8 @@ mkCoqDerivation {
|
||||
};
|
||||
releaseRev = v: "v${v}";
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
|
||||
mlPlugin = true;
|
||||
|
||||
meta = {
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -24,6 +25,8 @@ mkCoqDerivation {
|
||||
};
|
||||
releaseRev = v: "v${v}";
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
|
||||
meta = {
|
||||
description = "An implementation of bitvectors in Coq.";
|
||||
license = lib.licenses.mit;
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -47,6 +48,8 @@ mkCoqDerivation {
|
||||
|
||||
mlPlugin = true;
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
|
||||
meta = {
|
||||
license = lib.licenses.lgpl2;
|
||||
};
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -29,6 +30,8 @@ mkCoqDerivation {
|
||||
|
||||
useDuneifVersion = lib.versions.isGe "0.4.1";
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Library for serialization to S-expressions";
|
||||
license = licenses.mit;
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -24,6 +25,8 @@ mkCoqDerivation {
|
||||
};
|
||||
releaseRev = v: "v${v}";
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
|
||||
mlPlugin = true;
|
||||
|
||||
meta = {
|
||||
|
||||
@ -3,6 +3,7 @@
|
||||
mkCoqDerivation,
|
||||
which,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -163,6 +164,7 @@ in
|
||||
propagatedBuildInputs = [
|
||||
coq.ocamlPackages.findlib
|
||||
elpi
|
||||
stdlib
|
||||
];
|
||||
|
||||
meta = {
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -61,6 +62,8 @@ mkCoqDerivation {
|
||||
;
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
|
||||
mlPlugin = true;
|
||||
|
||||
buildFlags = [ "tactics" ];
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -119,6 +120,8 @@
|
||||
|
||||
mlPlugin = true;
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://mattam82.github.io/Coq-Equations/";
|
||||
description = "Plugin for Coq to add dependent pattern-matching";
|
||||
|
||||
@ -4,6 +4,7 @@
|
||||
autoconf,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -58,6 +59,8 @@ mkCoqDerivation {
|
||||
mlPlugin = true;
|
||||
useMelquiondRemake.logpath = "Flocq";
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Floating-point formalization for the Coq system";
|
||||
license = licenses.lgpl3;
|
||||
|
||||
@ -3,6 +3,7 @@
|
||||
callPackage,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -63,6 +64,8 @@
|
||||
|
||||
passthru.tests.suite = callPackage ./test.nix { };
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Reflexive SAT solver parameterised by a leaf tactic and Nelson-Oppen support";
|
||||
maintainers = with maintainers; [ siraben ];
|
||||
|
||||
@ -12,7 +12,7 @@
|
||||
|
||||
{ lib, ncurses, graphviz, lua, fetchzip,
|
||||
mkCoqDerivation, withDoc ? false, single ? false,
|
||||
coq, hierarchy-builder, version ? null }@args:
|
||||
coq, hierarchy-builder, stdlib, version ? null }@args:
|
||||
|
||||
let
|
||||
repo = "math-comp";
|
||||
@ -78,7 +78,7 @@ let
|
||||
mlPlugin = lib.versions.isLe "8.6" coq.coq-version;
|
||||
nativeBuildInputs = lib.optionals withDoc [ graphviz lua ];
|
||||
buildInputs = [ ncurses ];
|
||||
propagatedBuildInputs = mathcomp-deps;
|
||||
propagatedBuildInputs = [ stdlib ] ++ mathcomp-deps;
|
||||
|
||||
buildFlags = lib.optional withDoc "doc";
|
||||
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -40,6 +41,8 @@ mkCoqDerivation {
|
||||
release."1.2.8".sha256 = "05fskx5x1qgaf9qv626m38y5izichzzqc7g2rglzrkygbskrrwsb";
|
||||
releaseRev = v: "v${v}";
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
|
||||
preBuild = "cd src";
|
||||
|
||||
installPhase = ''
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -24,6 +25,8 @@ mkCoqDerivation {
|
||||
};
|
||||
releaseRev = v: "v${v}";
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
|
||||
mlPlugin = true;
|
||||
|
||||
meta = {
|
||||
|
||||
@ -7,6 +7,7 @@
|
||||
zchaff,
|
||||
fetchurl,
|
||||
cvc5,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -80,6 +81,7 @@ mkCoqDerivation {
|
||||
cvc5
|
||||
veriT'
|
||||
zchaff
|
||||
stdlib
|
||||
]
|
||||
++ (with coq.ocamlPackages; [
|
||||
findlib
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -30,7 +31,7 @@ let
|
||||
let
|
||||
pname = package;
|
||||
istac = package == "stalmarck-tactic";
|
||||
propagatedBuildInputs = lib.optional istac (stalmarck_ "stalmarck");
|
||||
propagatedBuildInputs = if istac then [ (stalmarck_ "stalmarck") ] else [ stdlib ];
|
||||
description =
|
||||
if istac then
|
||||
"Coq tactic and verified tool for proving tautologies using Stålmarck's algorithm"
|
||||
|
||||
59
pkgs/development/coq-modules/stdlib/default.nix
Normal file
59
pkgs/development/coq-modules/stdlib/default.nix
Normal file
@ -0,0 +1,59 @@
|
||||
{
|
||||
coq,
|
||||
mkCoqDerivation,
|
||||
lib,
|
||||
version ? null,
|
||||
}@args:
|
||||
(mkCoqDerivation {
|
||||
|
||||
pname = "stdlib";
|
||||
repo = "coq";
|
||||
owner = "coq";
|
||||
opam-name = "coq-stdlib";
|
||||
|
||||
inherit version;
|
||||
defaultVersion =
|
||||
with lib.versions;
|
||||
lib.switch
|
||||
[ coq.version ]
|
||||
[
|
||||
{
|
||||
cases = [ (isLt "8.21") ];
|
||||
out = "8.20";
|
||||
}
|
||||
]
|
||||
null;
|
||||
releaseRev = v: "v${v}";
|
||||
|
||||
release."8.20".sha256 = "sha256-AcoS4edUYCfJME1wx8UbuSQRF3jmxhArcZyPIoXcfu0=";
|
||||
|
||||
useDune = true;
|
||||
|
||||
configurePhase = ''
|
||||
echo "no configure phase"
|
||||
''; # don't run Coq's configure
|
||||
|
||||
preBuild = ''
|
||||
echo "(dirs stdlib)" > dune
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Coq Standard Library";
|
||||
license = lib.licenses.lgpl21Only;
|
||||
};
|
||||
|
||||
}).overrideAttrs
|
||||
(
|
||||
o:
|
||||
# stdlib is already included in Coq <= 8.20
|
||||
lib.optionalAttrs
|
||||
(coq.version != null && coq.version != "dev" && lib.versions.isLt "8.21" coq.version)
|
||||
{
|
||||
buildPhase = ''
|
||||
echo building nothing
|
||||
'';
|
||||
installPhase = ''
|
||||
touch $out
|
||||
'';
|
||||
}
|
||||
)
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -52,6 +53,8 @@ mkCoqDerivation rec {
|
||||
release."1.4.0".sha256 = "1m6c7ibwc99jd4cv14v3r327spnfvdf3x2mnq51f9rz99rffk68r";
|
||||
releaseRev = v: "coq-stdpp-${v}";
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
|
||||
preBuild = ''
|
||||
if [[ -f coq-lint.sh ]]
|
||||
then patchShebangs coq-lint.sh
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -37,6 +38,8 @@
|
||||
release."20200328".sha256 = "16vzild9gni8zhgb3qhmka47f8zagdh03k6nssif7drpim8233lx";
|
||||
release."20181116".sha256 = "032lrbkxqm9d3fhf6nv1kq2z0mqd3czv3ijlbsjwnfh12xck4vpl";
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://www.chargueraud.org/softs/tlc/";
|
||||
description = "Non-constructive library for Coq";
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
@ -24,6 +25,8 @@ mkCoqDerivation {
|
||||
"2.1.1+8.18".sha256 = "sha256-jYuQ9SPFRefNCUfn6+jEaJ4399EnU0gXPPkEDCpJYOI=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ stdlib ];
|
||||
|
||||
mlPlugin = true;
|
||||
|
||||
useDune = true;
|
||||
|
||||
@ -150,6 +150,7 @@ let
|
||||
ssprove = callPackage ../development/coq-modules/ssprove {};
|
||||
stalmarck-tactic = callPackage ../development/coq-modules/stalmarck {};
|
||||
stalmarck = self.stalmarck-tactic.stalmarck;
|
||||
stdlib = callPackage ../development/coq-modules/stdlib {};
|
||||
stdpp = callPackage ../development/coq-modules/stdpp { };
|
||||
StructTact = callPackage ../development/coq-modules/StructTact {};
|
||||
tlc = callPackage ../development/coq-modules/tlc {};
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user