stdenv-darwin: Fix dependency on bootstrapTools
Commit 2040a9ac574fffd36fe20130897ccec2d5928827 changed the order of $PATH elements, causing initialpath to appear after buildInputs. Thus gnugrep ended up depending on bin/sh from bootstrapTools, rather than from pkgs.bash. The fix is to provide pkgs.bash via buildInputs rather than initialPath. http://hydra.nixos.org/build/33276697
This commit is contained in:
parent
9ed00ff086
commit
7fc24dfd21
@ -55,8 +55,7 @@ in rec {
|
|||||||
stageFun = step: last: {shell ? "${bootstrapTools}/bin/sh",
|
stageFun = step: last: {shell ? "${bootstrapTools}/bin/sh",
|
||||||
overrides ? (pkgs: {}),
|
overrides ? (pkgs: {}),
|
||||||
extraPreHook ? "",
|
extraPreHook ? "",
|
||||||
extraBuildInputs ? with last.pkgs; [ xz darwin.CF libcxx ],
|
extraBuildInputs,
|
||||||
extraInitialPath ? [],
|
|
||||||
allowedRequisites ? null}:
|
allowedRequisites ? null}:
|
||||||
let
|
let
|
||||||
thisStdenv = import ../generic {
|
thisStdenv = import ../generic {
|
||||||
@ -85,7 +84,7 @@ in rec {
|
|||||||
${commonPreHook}
|
${commonPreHook}
|
||||||
${extraPreHook}
|
${extraPreHook}
|
||||||
'';
|
'';
|
||||||
initialPath = extraInitialPath ++ [ bootstrapTools ];
|
initialPath = [ bootstrapTools ];
|
||||||
fetchurlBoot = import ../../build-support/fetchurl {
|
fetchurlBoot = import ../../build-support/fetchurl {
|
||||||
stdenv = stage0.stdenv;
|
stdenv = stage0.stdenv;
|
||||||
curl = bootstrapTools;
|
curl = bootstrapTools;
|
||||||
@ -174,6 +173,8 @@ in rec {
|
|||||||
export PATH_LOCALE=${pkgs.darwin.locale}/share/locale
|
export PATH_LOCALE=${pkgs.darwin.locale}/share/locale
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
extraBuildInputs = with pkgs; [ xz darwin.CF libcxx ];
|
||||||
|
|
||||||
allowedRequisites =
|
allowedRequisites =
|
||||||
[ bootstrapTools ] ++
|
[ bootstrapTools ] ++
|
||||||
(with pkgs; [ xz libcxx libcxxabi icu ]) ++
|
(with pkgs; [ xz libcxx libcxxabi icu ]) ++
|
||||||
@ -203,9 +204,10 @@ in rec {
|
|||||||
# enables patchShebangs above. Unfortunately, patchShebangs ignores our $SHELL setting
|
# enables patchShebangs above. Unfortunately, patchShebangs ignores our $SHELL setting
|
||||||
# and instead goes by $PATH, which happens to contain bootstrapTools. So it goes and
|
# and instead goes by $PATH, which happens to contain bootstrapTools. So it goes and
|
||||||
# patches our shebangs back to point at bootstrapTools. This makes sure bash comes first.
|
# patches our shebangs back to point at bootstrapTools. This makes sure bash comes first.
|
||||||
extraInitialPath = [ pkgs.bash ];
|
extraBuildInputs = with pkgs; [ xz darwin.CF libcxx pkgs.bash ];
|
||||||
|
|
||||||
extraPreHook = ''
|
extraPreHook = ''
|
||||||
|
export PATH=${pkgs.bash}/bin:$PATH
|
||||||
export PATH_LOCALE=${pkgs.darwin.locale}/share/locale
|
export PATH_LOCALE=${pkgs.darwin.locale}/share/locale
|
||||||
'';
|
'';
|
||||||
|
|
||||||
@ -236,7 +238,7 @@ in rec {
|
|||||||
|
|
||||||
stage4 = with stage3; stageFun 4 stage3 {
|
stage4 = with stage3; stageFun 4 stage3 {
|
||||||
shell = "${pkgs.bash}/bin/bash";
|
shell = "${pkgs.bash}/bin/bash";
|
||||||
extraInitialPath = [ pkgs.bash ];
|
extraBuildInputs = with pkgs; [ xz darwin.CF libcxx pkgs.bash ];
|
||||||
extraPreHook = ''
|
extraPreHook = ''
|
||||||
export PATH_LOCALE=${pkgs.darwin.locale}/share/locale
|
export PATH_LOCALE=${pkgs.darwin.locale}/share/locale
|
||||||
'';
|
'';
|
||||||
|
Loading…
x
Reference in New Issue
Block a user