Fixing some things on the gcc-cross-wrapper (libc was not properly added to the
linking path), and with this achieved bash being cross-compilable. I fixed the few expressions involved in bash building, so they have well stated native and non-native inputs. I also tried to cross-build guile, and with this I found a problem in the actual cross-gcc: it calls the binutils ld, instead of the ld wrapper. This way, the programs/shared_libraries don't get the proper -rpath. svn path=/nixpkgs/branches/stdenv-updates/; revision=18497
This commit is contained in:
parent
b27cf66ee2
commit
a5fee3325a
@ -20,8 +20,11 @@ if test -n "@binutils@"; then
|
|||||||
PATH=$PATH:@binutils@/bin
|
PATH=$PATH:@binutils@/bin
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test -n "@glibc@"; then
|
if test -n "@libc@"; then
|
||||||
PATH=$PATH:@glibc@/bin
|
PATH=$PATH:@libc@/bin
|
||||||
|
addCVars @libc@
|
||||||
fi
|
fi
|
||||||
|
|
||||||
configureFlags="$configureFlags --build=$system --host=$crossConfig"
|
configureFlags="$configureFlags --build=$system --host=$crossConfig"
|
||||||
|
dontPatchELF=1
|
||||||
|
dontStrip=1
|
||||||
|
@ -8,8 +8,9 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "1czhcrn6l63xhsw3fjmv88djflqxbdpxjhgmwwvscm8rv4wn7vmz";
|
sha256 = "1czhcrn6l63xhsw3fjmv88djflqxbdpxjhgmwwvscm8rv4wn7vmz";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ makeWrapper ];
|
buildNativeInputs = [ makeWrapper ];
|
||||||
propagatedBuildInputs = [readline libtool gmp gawk];
|
propagatedBuildInputs = [ libtool ];
|
||||||
|
propagatedBuildNativeInputs = [readline gmp gawk];
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
wrapProgram $out/bin/guile-snarf --prefix PATH : "${gawk}/bin"
|
wrapProgram $out/bin/guile-snarf --prefix PATH : "${gawk}/bin"
|
||||||
|
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "1bmpp31sfjl3nzj8psvnsqrrv4gwnqzii8dxpxr6djz508yavsv6";
|
sha256 = "1bmpp31sfjl3nzj8psvnsqrrv4gwnqzii8dxpxr6djz508yavsv6";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ lzma m4 perl ];
|
buildNativeInputs = [ lzma m4 perl ];
|
||||||
|
|
||||||
unpackCmd = "lzma -d < $src | tar xv";
|
unpackCmd = "lzma -d < $src | tar xv";
|
||||||
|
|
||||||
|
@ -32,8 +32,8 @@ stdenv.mkDerivation rec {
|
|||||||
import ./bash-patches.nix patch;
|
import ./bash-patches.nix patch;
|
||||||
|
|
||||||
# Note: Bison is needed because the patches above modify parse.y.
|
# Note: Bison is needed because the patches above modify parse.y.
|
||||||
buildInputs = [bison]
|
buildNativeInputs = [bison];
|
||||||
++ stdenv.lib.optional (texinfo != null) texinfo
|
buildInputs = stdenv.lib.optional (texinfo != null) texinfo
|
||||||
++ stdenv.lib.optional interactive readline;
|
++ stdenv.lib.optional interactive readline;
|
||||||
|
|
||||||
configureFlags = "--with-installed-readline";
|
configureFlags = "--with-installed-readline";
|
||||||
|
@ -132,7 +132,8 @@ let
|
|||||||
# inside the set for derivations.
|
# inside the set for derivations.
|
||||||
recurseIntoAttrs = attrs: attrs // {recurseForDerivations = true;};
|
recurseIntoAttrs = attrs: attrs // {recurseForDerivations = true;};
|
||||||
|
|
||||||
useFromStdenv = it : alternative : if (builtins.hasAttr it stdenv) then
|
useFromStdenv = it : alternative : if ((bootStdenv != null ||
|
||||||
|
crossSystem == null) && builtins.hasAttr it stdenv) then
|
||||||
(builtins.getAttr it stdenv) else alternative;
|
(builtins.getAttr it stdenv) else alternative;
|
||||||
|
|
||||||
# Return the first available value in the order: pkg.val, val, or default.
|
# Return the first available value in the order: pkg.val, val, or default.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user