GCC 4.5: Allow libcCross != null && cross == null' for gcc.hostDrv'.

svn path=/nixpkgs/trunk/; revision=30401
This commit is contained in:
Ludovic Courtès
2011-11-12 23:55:41 +00:00
parent 2741c168fe
commit ea3ac07d92
2 changed files with 14 additions and 2 deletions
@@ -147,13 +147,15 @@ stdenv.mkDerivation ({
postPatch =
if (stdenv.system == "i586-pc-gnu"
|| (libcCross != null) # e.g., building `gcc.hostDrv'
|| (cross != null && cross.config == "i586-pc-gnu"
&& libcCross != null))
then
# On GNU/Hurd glibc refers to Hurd & Mach headers and libpthread is not
# in glibc, so add the right `-I' flags to the default spec string.
assert libcCross != null -> libpthreadCross != null;
let
libc = if cross != null then libcCross else stdenv.glibc;
libc = if libcCross != null then libcCross else stdenv.glibc;
gnu_h = "gcc/config/gnu.h";
i386_gnu_h = "gcc/config/i386/gnu.h";
extraCPPDeps =
@@ -186,7 +188,7 @@ stdenv.mkDerivation ({
# On NixOS, use the right path to the dynamic linker instead of
# `/lib/ld*.so'.
let
libc = if (cross != null && libcCross != null) then libcCross else stdenv.gcc.libc;
libc = if (libcCross != null) then libcCross else stdenv.gcc.libc;
in
'' echo "fixing the \`GLIBC_DYNAMIC_LINKER' and \`UCLIBC_DYNAMIC_LINKER' macros..."
for header in "gcc/config/"*-gnu.h "gcc/config/"*"/"*.h