1{ 2 coq, 3 mkCoqDerivation, 4 mathcomp-analysis, 5 mathcomp-analysis-stdlib, 6 mathcomp-algebra-tactics, 7 interval, 8 lib, 9 version ? null, 10}: 11 12(mkCoqDerivation { 13 namePrefix = [ 14 "coq" 15 "mathcomp" 16 ]; 17 pname = "infotheo"; 18 owner = "affeldt-aist"; 19 inherit version; 20 21 defaultVersion = 22 let 23 case = coq: mc: out: { 24 cases = [ 25 coq 26 mc 27 ]; 28 inherit out; 29 }; 30 in 31 with lib.versions; 32 lib.switch 33 [ coq.coq-version mathcomp-analysis.version ] 34 [ 35 (case (range "8.20" "8.20") (isGe "1.12") "0.9.4") 36 (case (range "8.19" "8.20") (range "1.10" "1.11") "0.9.3") 37 (case (range "8.19" "8.20") (isGe "1.9") "0.9.1") 38 (case (range "8.19" "8.20") (isGe "1.7") "0.7.7") 39 (case (range "8.19" "8.20") (isGe "1.7") "0.7.5") 40 (case (range "8.18" "8.20") (isGe "1.5") "0.7.3") 41 (case (range "8.18" "8.19") (isGe "1.2") "0.7.2") 42 (case (range "8.17" "8.19") (isGe "1.0") "0.7.1") 43 (case (isGe "8.17") (range "0.6.6" "0.7.0") "0.6.1") 44 (case (range "8.17" "8.18") (range "0.6.0" "0.6.7") "0.5.2") 45 (case (range "8.15" "8.16") (range "0.5.4" "0.6.5") "0.5.1") 46 ] 47 null; 48 release."0.9.4".sha256 = "sha256-btHOBNMdXvlG2jxC04+4qmIjeyuaqtyugm2Ruj3lQr8="; 49 release."0.9.3".sha256 = "sha256-8+cnVKNAvZ3MVV3BpS8UmCIxJphsQRBv3swek1eEBjE="; 50 release."0.9.1".sha256 = "sha256-WI20HxMHr1ZUwOGPIUl+nRI8TxVUa2+F1xcGjRDHO9g="; 51 release."0.7.7".sha256 = "sha256-kEbpMl7U+I2kvqi1VrjhIVFkZFO6h0tTHEUZRbHYG7E="; 52 release."0.7.5".sha256 = "sha256-pzPo+Acjx3vlyqOkSZQ8uT2BDLSTfbAnRm39e+/CqE0="; 53 release."0.7.3".sha256 = "sha256-7+qPtE1KfDmo9ZsQtWMzoR2MYnFpTjFHK/yZYVm+GxA="; 54 release."0.7.2".sha256 = "sha256-dekrdVmuTcqXXmKhIb831EKtMhbPrXHJZhzmGb9rdRo="; 55 release."0.7.1".sha256 = "sha256-/4Elb35SmscG6EjEcHYDo+AmWrpBUlygZL0WhaD+fcY="; 56 release."0.6.1".sha256 = "sha256-tFB5lrwRPIlHkP+ebgcJwu03Cc9yVaOINOAo8Bf2LT4="; 57 release."0.5.1".sha256 = "sha256-yBBl5l+V+dggsg5KM59Yo9CULKog/xxE8vrW+ZRnX7Y="; 58 release."0.5.2".sha256 = "sha256-8WAnAV53c0pMTdwj8XcUDUkLZbpUgIQbEOgOb63uHQA="; 59 60 propagatedBuildInputs = [ mathcomp-analysis-stdlib ]; 61 62 meta = with lib; { 63 description = "Coq formalization of information theory and linear error-correcting codes"; 64 license = licenses.lgpl21Plus; 65 }; 66}).overrideAttrs 67 (o: { 68 propagatedBuildInputs = 69 o.propagatedBuildInputs 70 ++ lib.optional (lib.versions.isGe "0.6.1" o.version || o.version == "dev") mathcomp-algebra-tactics 71 ++ lib.optional (lib.versions.isGe "0.7.2" o.version || o.version == "dev") interval; 72 })