nixpkgs/pkgs/top-level/coq-packages.nix
Théo Zimmermann 34394a38ef
ocamlPackages_3_11_2: remove
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.
2018-10-08 21:10:05 +02:00

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;
}