summary refs log tree commit diff
path: root/pkgs/development/compilers/gcc/6/default.nix
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2017-09-04 15:48:52 -0400
committerJohn Ericson <John.Ericson@Obsidian.Systems>2017-12-30 22:04:22 -0500
commit9cda2f5559bcbc8ca279521561f6096b35c7f07a (patch)
tree7a454d746ed46f535769de01fec2f5e44b7d5409 /pkgs/development/compilers/gcc/6/default.nix
parent114a9b625386e3ca4e142dce6ce8bcfcabea8fe3 (diff)
downloadnixpkgs-9cda2f5559bcbc8ca279521561f6096b35c7f07a.tar
nixpkgs-9cda2f5559bcbc8ca279521561f6096b35c7f07a.tar.gz
nixpkgs-9cda2f5559bcbc8ca279521561f6096b35c7f07a.tar.bz2
nixpkgs-9cda2f5559bcbc8ca279521561f6096b35c7f07a.tar.lz
nixpkgs-9cda2f5559bcbc8ca279521561f6096b35c7f07a.tar.xz
nixpkgs-9cda2f5559bcbc8ca279521561f6096b35c7f07a.tar.zst
nixpkgs-9cda2f5559bcbc8ca279521561f6096b35c7f07a.zip
gcc: Fix deps, for cross and consistency
Mainly making sure we have tools to build target libs
Diffstat (limited to 'pkgs/development/compilers/gcc/6/default.nix')
-rw-r--r--pkgs/development/compilers/gcc/6/default.nix17
1 files changed, 12 insertions, 5 deletions
diff --git a/pkgs/development/compilers/gcc/6/default.nix b/pkgs/development/compilers/gcc/6/default.nix
index 894abdb43fb..ab4cdfe4db6 100644
--- a/pkgs/development/compilers/gcc/6/default.nix
+++ b/pkgs/development/compilers/gcc/6/default.nix
@@ -49,9 +49,6 @@ assert libelf != null -> zlib != null;
 # Make sure we get GNU sed.
 assert hostPlatform.isDarwin -> gnused != null;
 
-# Need c++filt on darwin
-assert hostPlatform.isDarwin -> targetPackages.stdenv.cc.bintools or null != null;
-
 # The go frontend is written in c++
 assert langGo -> langCC;
 
@@ -281,8 +278,18 @@ stdenv.mkDerivation ({
     ++ (optional (perl != null) perl)
     ++ (optional javaAwtGtk pkgconfig);
 
-  buildInputs = [ gmp mpfr libmpc libelf ]
-    ++ (optional (isl != null) isl)
+  # For building runtime libs
+  depsBuildTarget =
+    if hostPlatform == buildPlatform then [
+      targetPackages.stdenv.cc.bintools # newly-built gcc will be used
+    ] else assert targetPlatform == hostPlatform; [ # build != host == target
+      stdenv.cc
+    ];
+
+  buildInputs = [
+    gmp mpfr libmpc libelf
+    targetPackages.stdenv.cc.bintools # For linking code at run-time
+  ] ++ (optional (isl != null) isl)
     ++ (optional (zlib != null) zlib)
     ++ (optionals langJava [ boehmgc zip unzip ])
     ++ (optionals javaAwtGtk ([ gtk2 libart_lgpl ] ++ xlibs))