Loading pkgs/development/coq-modules/mathcomp-analysis/default.nix +23 −6 Original line number Diff line number Diff line Loading @@ -51,14 +51,25 @@ let ] null; # list of analysis packages sorted by dependency order packages = [ "classical" "analysis" ]; packages = { "classical" = []; "reals" = [ "classical" ]; "altreals" = [ "reals" ]; "analysis" = [ "reals" ]; "reals-stdlib" = [ "reals" ]; "analysis-stdlib" = [ "analysis" "reals-stdlib" ]; }; mathcomp_ = package: let classical-deps = [ mathcomp.algebra mathcomp-finmap ]; analysis-deps = [ mathcomp.field mathcomp-bigenough ]; intra-deps = lib.optionals (package != "single") (map mathcomp_ (lib.head (lib.splitList (lib.pred.equal package) packages))); pkgpath = if package == "single" then "." else if package == "analysis" then "theories" else "${package}"; intra-deps = lib.optionals (package != "single") (map mathcomp_ packages.${package}); pkgpath = lib.switch package [ { case = "single"; out = "."; } { case = "analysis"; out = "theories"; } { case = "reals-stdlib"; out = "reals_stdlib"; } { case = "analysis-stdlib"; out = "analysis_stdlib"; } ] package; pname = if package == "single" then "mathcomp-analysis-single" else "mathcomp-${package}"; derivation = mkCoqDerivation ({ Loading @@ -81,7 +92,7 @@ let license = lib.licenses.cecill-c; }; passthru = lib.genAttrs packages mathcomp_; passthru = lib.mapAttrs (package: deps: mathcomp_ package) packages; }); # split packages didn't exist before 0.6, so bulding nothing in that case patched-derivation1 = derivation.overrideAttrs (o: Loading @@ -94,7 +105,13 @@ let o.version != null && o.version != "dev" && lib.versions.isLt "0.6" o.version) { preBuild = ""; } ); patched-derivation = patched-derivation2.overrideAttrs (o: # only packages classical and analysis existed before 1.7, so bulding nothing in that case patched-derivation3 = patched-derivation2.overrideAttrs (o: lib.optionalAttrs (o.pname != null && o.pname != "mathcomp-classical" && o.pname != "mathcomp-analysis" && o.version != null && o.version != "dev" && lib.versions.isLt "1.7" o.version) { preBuild = ""; buildPhase = "echo doing nothing"; installPhase = "echo doing nothing"; } ); patched-derivation = patched-derivation3.overrideAttrs (o: lib.optionalAttrs (o.version != null && (o.version == "dev" || lib.versions.isGe "0.3.4" o.version)) { Loading pkgs/top-level/coq-packages.nix +4 −0 Original line number Diff line number Diff line Loading @@ -99,13 +99,17 @@ let mathcomp-character = self.mathcomp.character; mathcomp-abel = callPackage ../development/coq-modules/mathcomp-abel {}; mathcomp-algebra-tactics = callPackage ../development/coq-modules/mathcomp-algebra-tactics {}; mathcomp-altreals = self.mathcomp-analysis.altreals; mathcomp-analysis = callPackage ../development/coq-modules/mathcomp-analysis {}; mathcomp-analysis-stdlib = self.mathcomp-analysis.analysis-stdlib; mathcomp-apery = callPackage ../development/coq-modules/mathcomp-apery {}; mathcomp-bigenough = callPackage ../development/coq-modules/mathcomp-bigenough {}; mathcomp-classical = self.mathcomp-analysis.classical; mathcomp-finmap = callPackage ../development/coq-modules/mathcomp-finmap {}; mathcomp-infotheo = callPackage ../development/coq-modules/mathcomp-infotheo {}; mathcomp-real-closed = callPackage ../development/coq-modules/mathcomp-real-closed {}; mathcomp-reals = self.mathcomp-analysis.reals; mathcomp-reals-stdlib = self.mathcomp-analysis.reals-stdlib; mathcomp-tarjan = callPackage ../development/coq-modules/mathcomp-tarjan {}; mathcomp-word = callPackage ../development/coq-modules/mathcomp-word {}; mathcomp-zify = callPackage ../development/coq-modules/mathcomp-zify {}; Loading Loading
pkgs/development/coq-modules/mathcomp-analysis/default.nix +23 −6 Original line number Diff line number Diff line Loading @@ -51,14 +51,25 @@ let ] null; # list of analysis packages sorted by dependency order packages = [ "classical" "analysis" ]; packages = { "classical" = []; "reals" = [ "classical" ]; "altreals" = [ "reals" ]; "analysis" = [ "reals" ]; "reals-stdlib" = [ "reals" ]; "analysis-stdlib" = [ "analysis" "reals-stdlib" ]; }; mathcomp_ = package: let classical-deps = [ mathcomp.algebra mathcomp-finmap ]; analysis-deps = [ mathcomp.field mathcomp-bigenough ]; intra-deps = lib.optionals (package != "single") (map mathcomp_ (lib.head (lib.splitList (lib.pred.equal package) packages))); pkgpath = if package == "single" then "." else if package == "analysis" then "theories" else "${package}"; intra-deps = lib.optionals (package != "single") (map mathcomp_ packages.${package}); pkgpath = lib.switch package [ { case = "single"; out = "."; } { case = "analysis"; out = "theories"; } { case = "reals-stdlib"; out = "reals_stdlib"; } { case = "analysis-stdlib"; out = "analysis_stdlib"; } ] package; pname = if package == "single" then "mathcomp-analysis-single" else "mathcomp-${package}"; derivation = mkCoqDerivation ({ Loading @@ -81,7 +92,7 @@ let license = lib.licenses.cecill-c; }; passthru = lib.genAttrs packages mathcomp_; passthru = lib.mapAttrs (package: deps: mathcomp_ package) packages; }); # split packages didn't exist before 0.6, so bulding nothing in that case patched-derivation1 = derivation.overrideAttrs (o: Loading @@ -94,7 +105,13 @@ let o.version != null && o.version != "dev" && lib.versions.isLt "0.6" o.version) { preBuild = ""; } ); patched-derivation = patched-derivation2.overrideAttrs (o: # only packages classical and analysis existed before 1.7, so bulding nothing in that case patched-derivation3 = patched-derivation2.overrideAttrs (o: lib.optionalAttrs (o.pname != null && o.pname != "mathcomp-classical" && o.pname != "mathcomp-analysis" && o.version != null && o.version != "dev" && lib.versions.isLt "1.7" o.version) { preBuild = ""; buildPhase = "echo doing nothing"; installPhase = "echo doing nothing"; } ); patched-derivation = patched-derivation3.overrideAttrs (o: lib.optionalAttrs (o.version != null && (o.version == "dev" || lib.versions.isGe "0.3.4" o.version)) { Loading
pkgs/top-level/coq-packages.nix +4 −0 Original line number Diff line number Diff line Loading @@ -99,13 +99,17 @@ let mathcomp-character = self.mathcomp.character; mathcomp-abel = callPackage ../development/coq-modules/mathcomp-abel {}; mathcomp-algebra-tactics = callPackage ../development/coq-modules/mathcomp-algebra-tactics {}; mathcomp-altreals = self.mathcomp-analysis.altreals; mathcomp-analysis = callPackage ../development/coq-modules/mathcomp-analysis {}; mathcomp-analysis-stdlib = self.mathcomp-analysis.analysis-stdlib; mathcomp-apery = callPackage ../development/coq-modules/mathcomp-apery {}; mathcomp-bigenough = callPackage ../development/coq-modules/mathcomp-bigenough {}; mathcomp-classical = self.mathcomp-analysis.classical; mathcomp-finmap = callPackage ../development/coq-modules/mathcomp-finmap {}; mathcomp-infotheo = callPackage ../development/coq-modules/mathcomp-infotheo {}; mathcomp-real-closed = callPackage ../development/coq-modules/mathcomp-real-closed {}; mathcomp-reals = self.mathcomp-analysis.reals; mathcomp-reals-stdlib = self.mathcomp-analysis.reals-stdlib; mathcomp-tarjan = callPackage ../development/coq-modules/mathcomp-tarjan {}; mathcomp-word = callPackage ../development/coq-modules/mathcomp-word {}; mathcomp-zify = callPackage ../development/coq-modules/mathcomp-zify {}; Loading