This requires removing also the Coq 8.3 and Matita 0.5.8 packages. Coq 8.3 was released 8 years ago (2010) and there is no trace left of users of this version (contrary to Coq 8.4, released 2012). It is well over time to remove it. Matita 0.5.8 was released in 2010 and because this version was still used for teaching according to the official website, a legacy release (0.5.9) was released in 5 years later to compile with more recent OCaml libraries. Updating to 0.5.9 (or a more recent version like 0.99.3) should allow getting rid of the dependency on older OCaml but it is hard to test given that the package is already broken before this update.
85 lines
3.2 KiB
Nix
85 lines
3.2 KiB
Nix
{ lib, callPackage, newScope, recurseIntoAttrs
|
|
, gnumake3
|
|
, ocamlPackages_4_02
|
|
, ocamlPackages_4_05
|
|
}:
|
|
|
|
let
|
|
mkCoqPackages' = self: coq:
|
|
let callPackage = newScope self ; in rec {
|
|
inherit callPackage coq;
|
|
coqPackages = self;
|
|
|
|
contribs = recurseIntoAttrs
|
|
(callPackage ../development/coq-modules/contribs {});
|
|
|
|
autosubst = callPackage ../development/coq-modules/autosubst {};
|
|
bignums = if lib.versionAtLeast coq.coq-version "8.6"
|
|
then callPackage ../development/coq-modules/bignums {}
|
|
else null;
|
|
category-theory = callPackage ../development/coq-modules/category-theory { };
|
|
CoLoR = callPackage ../development/coq-modules/CoLoR {};
|
|
coq-ext-lib = callPackage ../development/coq-modules/coq-ext-lib {};
|
|
coq-haskell = callPackage ../development/coq-modules/coq-haskell { };
|
|
coqprime = callPackage ../development/coq-modules/coqprime {};
|
|
coquelicot = callPackage ../development/coq-modules/coquelicot {};
|
|
dpdgraph = callPackage ../development/coq-modules/dpdgraph {};
|
|
equations = callPackage ../development/coq-modules/equations { };
|
|
fiat_HEAD = callPackage ../development/coq-modules/fiat/HEAD.nix {};
|
|
flocq = callPackage ../development/coq-modules/flocq {};
|
|
heq = callPackage ../development/coq-modules/heq {};
|
|
HoTT = callPackage ../development/coq-modules/HoTT {};
|
|
interval = callPackage ../development/coq-modules/interval {};
|
|
iris = callPackage ../development/coq-modules/iris {};
|
|
math-classes = callPackage ../development/coq-modules/math-classes { };
|
|
mathcomp = callPackage ../development/coq-modules/mathcomp { };
|
|
metalib = callPackage ../development/coq-modules/metalib { };
|
|
multinomials = callPackage ../development/coq-modules/multinomials {};
|
|
paco = callPackage ../development/coq-modules/paco {};
|
|
QuickChick = callPackage ../development/coq-modules/QuickChick {};
|
|
ssreflect = callPackage ../development/coq-modules/ssreflect { };
|
|
stdpp = callPackage ../development/coq-modules/stdpp { };
|
|
tlc = callPackage ../development/coq-modules/tlc {};
|
|
};
|
|
|
|
filterCoqPackages = coq:
|
|
lib.filterAttrsRecursive
|
|
(_: p:
|
|
let pred = p.compatibleCoqVersions or (_: true);
|
|
in pred coq.coq-version
|
|
);
|
|
|
|
in rec {
|
|
|
|
mkCoqPackages = coq:
|
|
let self = mkCoqPackages' self coq; in
|
|
filterCoqPackages coq self;
|
|
|
|
coq_8_4 = callPackage ../applications/science/logic/coq/8.4.nix {
|
|
inherit (ocamlPackages_4_02) ocaml findlib lablgtk;
|
|
camlp5 = ocamlPackages_4_02.camlp5_transitional;
|
|
};
|
|
coq_8_5 = callPackage ../applications/science/logic/coq {
|
|
ocamlPackages = ocamlPackages_4_05;
|
|
version = "8.5pl3";
|
|
};
|
|
coq_8_6 = callPackage ../applications/science/logic/coq {
|
|
ocamlPackages = ocamlPackages_4_05;
|
|
version = "8.6.1";
|
|
};
|
|
coq_8_7 = callPackage ../applications/science/logic/coq {
|
|
version = "8.7.2";
|
|
};
|
|
coq_8_8 = callPackage ../applications/science/logic/coq {
|
|
version = "8.8.2";
|
|
};
|
|
|
|
coqPackages_8_5 = mkCoqPackages coq_8_5;
|
|
coqPackages_8_6 = mkCoqPackages coq_8_6;
|
|
coqPackages_8_7 = mkCoqPackages coq_8_7;
|
|
coqPackages_8_8 = mkCoqPackages coq_8_8;
|
|
coqPackages = coqPackages_8_8;
|
|
coq = coqPackages.coq;
|
|
|
|
}
|