summary refs log tree commit diff
path: root/pkgs/build-support/cc-wrapper
diff options
context:
space:
mode:
authorMatthew Bauer <mjbauer95@gmail.com>2019-04-11 20:51:48 -0400
committerMatthew Bauer <mjbauer95@gmail.com>2019-04-11 21:28:51 -0400
commitd453273fbf86ff1526094a84b01ef8fb9fad98e3 (patch)
tree9f35a286675c3ca58c84f5b4ab40fe3ee33ce18f /pkgs/build-support/cc-wrapper
parentd0506bed9f8218f7d09e0c3f439424ff64086011 (diff)
downloadnixpkgs-d453273fbf86ff1526094a84b01ef8fb9fad98e3.tar
nixpkgs-d453273fbf86ff1526094a84b01ef8fb9fad98e3.tar.gz
nixpkgs-d453273fbf86ff1526094a84b01ef8fb9fad98e3.tar.bz2
nixpkgs-d453273fbf86ff1526094a84b01ef8fb9fad98e3.tar.lz
nixpkgs-d453273fbf86ff1526094a84b01ef8fb9fad98e3.tar.xz
nixpkgs-d453273fbf86ff1526094a84b01ef8fb9fad98e3.tar.zst
nixpkgs-d453273fbf86ff1526094a84b01ef8fb9fad98e3.zip
llvm8: support c++ in cross case
this adds libc++ to the LLVM cross, giving us access to the full
Nixpkgs set. This requires 4 stages of wrapped compilers:

- Clang with no libraries
- Clang with just compiler-rt
- Clang with Libc, and compiler-rt
- Clang with Libc++, Libc, and compiler-rt
Diffstat (limited to 'pkgs/build-support/cc-wrapper')
-rw-r--r--pkgs/build-support/cc-wrapper/default.nix4
1 files changed, 2 insertions, 2 deletions
diff --git a/pkgs/build-support/cc-wrapper/default.nix b/pkgs/build-support/cc-wrapper/default.nix
index f05b9fb2255..9569c6e78c8 100644
--- a/pkgs/build-support/cc-wrapper/default.nix
+++ b/pkgs/build-support/cc-wrapper/default.nix
@@ -45,9 +45,9 @@ let
   # The wrapper scripts use 'cat' and 'grep', so we may need coreutils.
   coreutils_bin = if nativeTools then "" else getBin coreutils;
 
-  default_cxx_stdlib_compile = if (targetPlatform.isLinux && !(cc.isGNU or false) && !nativeTools && cc ? gcc) then
+  default_cxx_stdlib_compile = if (targetPlatform.isLinux && !(cc.isGNU or false) && !nativeTools && cc ? gcc) && !(targetPlatform.useLLVM or false) then
     "-isystem $(echo -n ${cc.gcc}/include/c++/*) -isystem $(echo -n ${cc.gcc}/include/c++/*)/$(${cc.gcc}/bin/gcc -dumpmachine)"
-  else if targetPlatform.isDarwin && (libcxx != null) && (cc.isClang or false) then
+  else if targetPlatform.isDarwin && (libcxx != null) && (cc.isClang or false) && !(targetPlatform.useLLVM or false) then
     "-isystem ${libcxx}/include/c++/v1"
   else "";