1{
2 lib,
3 mkCoqDerivation,
4 coq,
5 ceres,
6 ExtLib,
7 version ? null,
8}:
9
10mkCoqDerivation {
11
12 pname = "parsec";
13 repo = "coq-parsec";
14 owner = "liyishuai";
15
16 propagatedBuildInputs = [
17 ceres
18 ExtLib
19 ];
20 releaseRev = (v: "v${v}");
21
22 inherit version;
23 defaultVersion =
24 let
25 case = case: out: { inherit case out; };
26 in
27 with lib.versions;
28 lib.switch coq.version [
29 (case (range "8.14" "9.1") "0.2.0")
30 (case (range "8.14" "8.20") "0.1.2")
31 (case (range "8.12" "8.16") "0.1.1")
32 (case (range "8.12" "8.13") "0.1.0")
33 ] null;
34 release."0.2.0".sha256 = "sha256-hM6LVFQ2VQ42QeHu8Ex+oz1VvJUr+g8/nZN+bYHEljQ=";
35 release."0.1.2".sha256 = "sha256-QN0h1CsX86DQBDsluXLtNUvMh3r60/0iDSbYam67AhA=";
36 release."0.1.1".sha256 = "sha256:1c0l18s68pzd4c8i3jimh2yz0pqm4g38pca4bm7fr18r8xmqf189";
37 release."0.1.0".sha256 = "sha256:01avfcqirz2b9wjzi9iywbhz9szybpnnj3672dgkfsimyg9jgnsr";
38
39 useDuneifVersion = v: lib.versions.isGe "0.2.0" v || v == "dev";
40
41 meta = with lib; {
42 description = "Library for serialization to S-expressions";
43 license = licenses.bsd3;
44 maintainers = with maintainers; [ Zimmi48 ];
45 };
46}