at master 52 lines 1.1 kB view raw
1{ 2 lib, 3 mkCoqDerivation, 4 coq, 5 parsec, 6 MenhirLib, 7 version ? null, 8}: 9 10(mkCoqDerivation { 11 pname = "json"; 12 owner = "liyishuai"; 13 repo = "coq-json"; 14 inherit version; 15 16 defaultVersion = 17 let 18 case = case: out: { inherit case out; }; 19 inherit (lib.versions) range; 20 in 21 lib.switch coq.coq-version [ 22 (case (range "8.14" "9.1") "0.2.0") 23 (case (range "8.14" "8.20") "0.1.3") 24 ] null; 25 release = { 26 "0.2.0".sha256 = "sha256-qDRTgWLUvu4x3/d3BDcqo2I4W5ZmLyRiwuY/Tm/FuKA="; 27 "0.1.3".sha256 = "sha256-lElAzW4IuX+BB6ngDjlyKn0MytLRfbhQanB+Lct/WR0="; 28 }; 29 releaseRev = v: "v${v}"; 30 31 propagatedBuildInputs = [ 32 parsec 33 MenhirLib 34 coq.ocamlPackages.menhir 35 ]; 36 37 useDuneifVersion = v: lib.versions.isGe "0.2.0" v || v == "dev"; 38 39 meta = { 40 description = "From JSON to Coq, and vice versa"; 41 license = lib.licenses.bsd3; 42 }; 43}).overrideAttrs 44 ( 45 o: 46 lib.optionalAttrs (o.version != null && lib.versions.isLt "0.2.0" o.version) { 47 buildFlags = [ 48 "MENHIRFLAGS=--coq" 49 "MENHIRFLAGS+=--coq-no-version-check" 50 ]; 51 } 52 )