diff options
author | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2014-02-04 17:18:38 +0100 |
---|---|---|
committer | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2014-02-05 19:18:33 +0100 |
commit | c3d84d15ce29b3be3f55e3c5fded66998202595c (patch) | |
tree | ecf67167cf9a92b57b55748a78c1da8644577130 /pkgs/stdenv/adapters.nix | |
parent | 7703f04b751084aecca9eeda4517ce7c053a4000 (diff) |
Apply makeOverridable to stdenv
This removes the need for hacks like stdenv.regenerate. It also ensures that overrideGCC is now stackable (so ‘stdenv = useGoldLinker clangStdenv’ works).
Diffstat (limited to 'pkgs/stdenv/adapters.nix')
-rw-r--r-- | pkgs/stdenv/adapters.nix | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/pkgs/stdenv/adapters.nix b/pkgs/stdenv/adapters.nix index 85063621815ca..da4e0691e43e1 100644 --- a/pkgs/stdenv/adapters.nix +++ b/pkgs/stdenv/adapters.nix @@ -8,20 +8,14 @@ rec { # Override the compiler in stdenv for specific packages. - overrideGCC = stdenv: gcc: stdenv // - { mkDerivation = args: stdenv.mkDerivation (args // { NIX_GCC = gcc; }); - inherit gcc; - }; + overrideGCC = stdenv: gcc: stdenv.override { inherit gcc; }; # Add some arbitrary packages to buildInputs for specific packages. # Used to override packages in stdenv like Make. Should not be used # for other dependencies. - overrideInStdenv = stdenv: pkgs: stdenv // - { mkDerivation = args: stdenv.mkDerivation (args // - { buildInputs = args.buildInputs or [] ++ pkgs; } - ); - }; + overrideInStdenv = stdenv: pkgs: + stdenv.override (prev: { extraBuildInputs = prev.extraBuildInputs or [] ++ pkgs; }); # Override the setup script of stdenv. Useful for testing new @@ -32,7 +26,7 @@ rec { # randomPkg = import ../bla { ... # stdenv = overrideSetup stdenv ../stdenv/generic/setup-latest.sh; # }; - overrideSetup = stdenv: setup: stdenv.regenerate setup; + overrideSetup = stdenv: setupScript: stdenv.override { inherit setupScript; }; # Return a modified stdenv that uses dietlibc to create small |