coqPackages: refactor
This commit is contained in:
committed by
Vincent Laporte
parent
04065a7354
commit
9ffd16b385
@@ -1,58 +1,28 @@
|
||||
{ stdenv, fetchFromGitHub, coq, bignums }:
|
||||
{ lib, mkCoqDerivation, coq, bignums, version ? null }:
|
||||
|
||||
let
|
||||
coqVersions = {
|
||||
"8.6" = "1.4.0";
|
||||
"8.7" = "1.4.0";
|
||||
"8.8" = "1.6.0";
|
||||
"8.9" = "1.6.0";
|
||||
"8.10" = "1.7.0";
|
||||
"8.11" = "1.7.0";
|
||||
};
|
||||
params = {
|
||||
"1.4.0" = {
|
||||
version = "1.4.0";
|
||||
rev = "168c6b86c7d3f87ee51791f795a8828b1521589a";
|
||||
sha256 = "1d2whsgs3kcg5wgampd6yaqagcpmzhgb6a0hp6qn4lbimck5dfmm";
|
||||
};
|
||||
"1.6.0" = {
|
||||
version = "1.6.0";
|
||||
rev = "328aa06270584b578edc0d2925e773cced4f14c8";
|
||||
sha256 = "07sy9kw1qlynsqy251adgi8b3hghrc9xxl2rid6c82mxfsp329sd";
|
||||
};
|
||||
"1.7.0" = {
|
||||
version = "1.7.0";
|
||||
rev = "08b5481ed6ea1a5d2c4c068b62156f5be6d82b40";
|
||||
sha256 = "1w7fmcpf0691gcwq00lm788k4ijlwz3667zj40j5jjc8j8hj7cq3";
|
||||
};
|
||||
};
|
||||
param = params.${coqVersions.${coq.coq-version}};
|
||||
in
|
||||
with lib; mkCoqDerivation {
|
||||
pname = "color";
|
||||
owner = "fblanqui";
|
||||
inherit version;
|
||||
defaultVersion = with versions; switch coq.coq-version [
|
||||
{case = range "8.10" "8.11"; out = "1.7.0"; }
|
||||
{case = range "8.8" "8.9"; out = "1.6.0"; }
|
||||
{case = range "8.6" "8.7"; out = "1.4.0"; }
|
||||
] null;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "coq${coq.coq-version}-CoLoR-${param.version}";
|
||||
release."1.7.0".rev = "08b5481ed6ea1a5d2c4c068b62156f5be6d82b40";
|
||||
release."1.7.0".sha256 = "1w7fmcpf0691gcwq00lm788k4ijlwz3667zj40j5jjc8j8hj7cq3";
|
||||
release."1.6.0".rev = "328aa06270584b578edc0d2925e773cced4f14c8";
|
||||
release."1.6.0".sha256 = "07sy9kw1qlynsqy251adgi8b3hghrc9xxl2rid6c82mxfsp329sd";
|
||||
release."1.4.0".rev = "168c6b86c7d3f87ee51791f795a8828b1521589a";
|
||||
release."1.4.0".sha256 = "1d2whsgs3kcg5wgampd6yaqagcpmzhgb6a0hp6qn4lbimck5dfmm";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "fblanqui";
|
||||
repo = "color";
|
||||
inherit (param) rev sha256;
|
||||
};
|
||||
|
||||
buildInputs = [ coq bignums ];
|
||||
extraBuildInputs = [ bignums ];
|
||||
enableParallelBuilding = false;
|
||||
|
||||
installPhase = ''
|
||||
make -f Makefile.coq COQLIB=$out/lib/coq/${coq.coq-version}/ install
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
meta = {
|
||||
homepage = "http://color.inria.fr/";
|
||||
description = "CoLoR is a library of formal mathematical definitions and proofs of theorems on rewriting theory and termination whose correctness has been mechanically checked by the Coq proof assistant.";
|
||||
maintainers = with maintainers; [ jpas jwiegley ];
|
||||
platforms = coq.meta.platforms;
|
||||
};
|
||||
|
||||
passthru = {
|
||||
compatibleCoqVersions = v: builtins.hasAttr v coqVersions;
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user