Fix the cross-building of packages mentioned in stdenvLinux.overrides.

svn path=/nixpkgs/trunk/; revision=23038
This commit is contained in:
Lluís Batlle i Rossell 2010-08-08 17:26:30 +00:00
parent 4b6b9f8256
commit 089ee5da11

View File

@ -93,8 +93,12 @@ let
# (un-overriden) set of packages, allowing packageOverrides
# attributes to refer to the original attributes (e.g. "foo =
# ... pkgs.foo ...").
# We don't want stdenv overrides in the case of cross-building, or
# otherwise the basic overrided packages will not be built with the
# crossStdenv adapter.
overrides = (getConfig ["packageOverrides"] (pkgs: {})) pkgsOrig //
(if pkgsOrig.stdenv ? overrides then pkgsOrig.stdenv.overrides else { });
(if (pkgsOrig.stdenv ? overrides && crossSystem == null)
then pkgsOrig.stdenv.overrides else { });
pkgsOrig = pkgsFun {}; # the un-overriden packages, passed to packageOverrides
pkgs = pkgsFun overrides; # the overriden, final packages