darwin stdenv: Properly compose overrides

`super` usage was very suspect.
This commit is contained in:
John Ericson 2018-05-23 02:06:18 -04:00
parent e3f35d1491
commit f567a851a1

View file

@ -294,7 +294,7 @@ in rec {
extraPreHook = '' extraPreHook = ''
export PATH_LOCALE=${pkgs.darwin.locale}/share/locale export PATH_LOCALE=${pkgs.darwin.locale}/share/locale
''; '';
overrides = self: super: (persistent self super) // { overrides = lib.composeExtensions persistent (self: super: {
# Hack to make sure we don't link ncurses in bootstrap tools. The proper # Hack to make sure we don't link ncurses in bootstrap tools. The proper
# solution is to avoid passing -L/nix-store/...-bootstrap-tools/lib, # solution is to avoid passing -L/nix-store/...-bootstrap-tools/lib,
# quite a sledgehammer just to get the C runtime. # quite a sledgehammer just to get the C runtime.
@ -303,7 +303,7 @@ in rec {
"--disable-curses" "--disable-curses"
]; ];
}); });
}; });
}; };
stdenvDarwin = prevStage: let stdenvDarwin = prevStage: let
@ -386,16 +386,15 @@ in rec {
dyld Libsystem CF cctools ICU libiconv locale dyld Libsystem CF cctools ICU libiconv locale
]); ]);
overrides = self: super: overrides = lib.composeExtensions persistent (self: super: {
let persistent' = persistent self super; in persistent' // { clang = cc;
clang = cc; llvmPackages = super.llvmPackages // { clang = cc; };
llvmPackages = persistent'.llvmPackages // { clang = cc; }; inherit cc;
inherit cc;
darwin = super.darwin // { darwin = super.darwin // {
xnu = super.darwin.xnu.override { python = super.python.override { configd = null; }; }; xnu = super.darwin.xnu.override { python = super.python.override { configd = null; }; };
};
}; };
});
}; };
stagesDarwin = [ stagesDarwin = [