top-level: turn the screw
- Non-cross stdenvs are honest and assert that `crossSystem` is null - `crossSystem` is a mandatory argument to top-level/stage.nix, just like `system` and `platform` - Broken default arguments on stdenvs for testing are gone. - All stdenvs (but little-used stdenvNix) take the same arguments for easy testing.
This commit is contained in:
@@ -3,11 +3,9 @@
|
||||
# external (non-Nix) tools, such as /usr/bin/gcc, and it contains a C
|
||||
# compiler and linker that do not search in default locations,
|
||||
# ensuring purity of components produced by it.
|
||||
{ lib, allPackages
|
||||
, system, platform, crossSystem, config
|
||||
|
||||
# The function defaults are for easy testing.
|
||||
{ system ? builtins.currentSystem
|
||||
, allPackages ? import ../../..
|
||||
, platform ? null, config ? {}, lib ? (import ../../../lib)
|
||||
, bootstrapFiles ?
|
||||
if system == "i686-linux" then import ./bootstrap/i686.nix
|
||||
else if system == "x86_64-linux" then import ./bootstrap/x86_64.nix
|
||||
@@ -18,6 +16,8 @@
|
||||
else abort "unsupported platform for the pure Linux stdenv"
|
||||
}:
|
||||
|
||||
assert crossSystem == null;
|
||||
|
||||
rec {
|
||||
|
||||
commonPreHook =
|
||||
@@ -106,7 +106,7 @@ rec {
|
||||
};
|
||||
|
||||
thisPkgs = allPackages {
|
||||
inherit system platform config;
|
||||
inherit system platform crossSystem config;
|
||||
allowCustomOverrides = false;
|
||||
stdenv = thisStdenv;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user