diff options
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/development/compilers/gcc/libstdc++-hook.sh | 1 | ||||
-rw-r--r-- | pkgs/development/compilers/llvm/4/default.nix | 14 |
2 files changed, 13 insertions, 2 deletions
diff --git a/pkgs/development/compilers/gcc/libstdc++-hook.sh b/pkgs/development/compilers/gcc/libstdc++-hook.sh index c699d5460eb1..2d30c845b5a3 100644 --- a/pkgs/development/compilers/gcc/libstdc++-hook.sh +++ b/pkgs/development/compilers/gcc/libstdc++-hook.sh @@ -1 +1,2 @@ export NIX_CXXSTDLIB_COMPILE+="-isystem $(echo -n @gcc@/include/c++/*) -isystem $(echo -n @gcc@/include/c++/*)/$(@gcc@/bin/gcc -dumpmachine)" +export NIX_CXXSTDLIB_LINK=" -stdlib=libstdc++" diff --git a/pkgs/development/compilers/llvm/4/default.nix b/pkgs/development/compilers/llvm/4/default.nix index 9e5bccff3556..11a9a46c15e5 100644 --- a/pkgs/development/compilers/llvm/4/default.nix +++ b/pkgs/development/compilers/llvm/4/default.nix @@ -1,4 +1,8 @@ -{ lowPrio, newScope, stdenv, cmake, libxml2, python2, isl, fetchurl, overrideCC, wrapCC, darwin, ccWrapperFun }: +{ lowPrio, newScope, stdenv, targetPlatform, cmake, libstdcxxHook +, libxml2, python2, isl, fetchurl, overrideCC, wrapCC, ccWrapperFun +, darwin +}: + let callPackage = newScope (self // { inherit stdenv cmake libxml2 python2 isl release_version version fetch; }); @@ -46,7 +50,12 @@ let extraPackages = [ self.libcxx self.libcxxabi ]; }; - stdenv = overrideCC stdenv self.clang; + stdenv = stdenv.override (drv: { + allowedRequisites = null; + cc = self.clang; + # Use the gcc libstdc++ when targeting linux. + extraBuildInputs = if stdenv.cc.isGNU then [ libstdcxxHook ] else drv.extraBuildInputs; + }); libcxxStdenv = overrideCC stdenv self.libcxxClang; @@ -58,4 +67,5 @@ let libcxxabi = callPackage ./libc++abi.nix {}; }; + in self |