1{
2 lib,
3 mkCoqDerivation,
4 coq,
5 aac-tactics,
6 mathcomp-boot,
7 version ? null,
8}:
9
10mkCoqDerivation {
11 pname = "relation-algebra";
12 owner = "damien-pous";
13
14 releaseRev = v: if lib.versions.range "1.7.6" "1.7.9" v then "v.${v}" else "v${v}";
15
16 release."1.7.11".sha256 = "sha256-ZOV0lUdduSabW9Qsz70clkO7QK/NK2STaHqBWcXb7nI=";
17 release."1.7.10".sha256 = "sha256-h738L+dybhmWZwTSLJrhv+sB+cIbj0+62Zcy9BH5sVo=";
18 release."1.7.9".sha256 = "sha256-1WzAZyj6q7s0u/9r7lahzxTl8612EA540l9wpm7TYEg=";
19 release."1.7.8".sha256 = "sha256-RITFd3G5TjY+rFzW073Ao1AGU+u6OGQyQeGHVodAXnA=";
20 release."1.7.7".sha256 = "sha256:1dff3id6nypl2alhk9rcifj3dab0j78dym05blc525lawsmc26l2";
21 release."1.7.6".sha256 = "sha256:02gsj06zcy9zgd0h1ibqspwfiwm36pkkgg9cz37k4bxzcapxcr6w";
22 release."1.7.5".sha256 = "sha256-XdO8agoJmNXPv8Ho+KTlLCB4oRlQsb0w06aM9M16ZBU=";
23 release."1.7.4".sha256 = "sha256-o+v2CIAa2+9tJ/V8DneDTf4k31KMHycgMBLaQ+A4ufM=";
24 release."1.7.3".sha256 = "sha256-4feSNfi7h4Yhwn5L+9KP9K1S7HCPvsvaVWwoQSTFvos=";
25 release."1.7.2".sha256 = "sha256-f4oNjXspNMEz3AvhIeYO3avbUa1AThoC9DbcHMb5A2o=";
26 release."1.7.1".sha256 = "sha256-WWVMcR6z8rT4wzZPb8SlaVWGe7NC8gScPqawd7bltQA=";
27
28 inherit version;
29 defaultVersion =
30 let
31 case = case: out: { inherit case out; };
32 in
33 with lib.versions;
34 lib.switch coq.coq-version [
35 (case (isEq "8.20") "1.7.11")
36 (case (range "8.18" "8.19") "1.7.10")
37 (case (isEq "8.17") "1.7.9")
38 (case (isEq "8.16") "1.7.8")
39 (case (isEq "8.15") "1.7.7")
40 (case (isEq "8.14") "1.7.6")
41 (case (isEq "8.13") "1.7.5")
42 (case (isEq "8.12") "1.7.4")
43 (case (isEq "8.11") "1.7.3")
44 (case (isEq "8.10") "1.7.2")
45 (case (isEq "8.9") "1.7.1")
46 ] null;
47
48 mlPlugin = true;
49
50 propagatedBuildInputs = [
51 aac-tactics
52 mathcomp-boot
53 ];
54
55 meta = with lib; {
56 description = "Relation algebra library for Coq";
57 maintainers = with maintainers; [ siraben ];
58 license = licenses.gpl3Plus;
59 platforms = platforms.unix;
60 };
61}