tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
Add libcxxStdenv attribute to recent llvm package sets
Shea Levy
9 years ago
be02229f
76b696d7
+40
-5
4 changed files
expand all
collapse all
unified
split
pkgs
development
compilers
llvm
3.7
default.nix
3.8
default.nix
3.9
default.nix
top-level
all-packages.nix
+12
-1
pkgs/development/compilers/llvm/3.7/default.nix
···
1
1
-
{ newScope, stdenv, isl, fetchurl, overrideCC, wrapCC }:
1
1
+
{ newScope, stdenv, isl, fetchurl, overrideCC, wrapCC, ccWrapperFun }:
2
2
let
3
3
callPackage = newScope (self // { inherit stdenv isl version fetch; });
4
4
···
24
24
25
25
clang = wrapCC self.clang-unwrapped;
26
26
27
27
+
libcxxClang = ccWrapperFun {
28
28
+
cc = self.clang-unwrapped;
29
29
+
isClang = true;
30
30
+
inherit (self) stdenv;
31
31
+
/* FIXME is this right? */
32
32
+
inherit (stdenv.cc) libc nativeTools nativeLibc;
33
33
+
extraPackages = [ self.libcxx self.libcxxabi ];
34
34
+
};
35
35
+
27
36
stdenv = overrideCC stdenv self.clang;
37
37
+
38
38
+
libcxxStdenv = overrideCC stdenv self.libcxxClang;
28
39
29
40
lldb = callPackage ./lldb.nix {};
30
41
+12
-1
pkgs/development/compilers/llvm/3.8/default.nix
···
1
1
-
{ newScope, stdenv, isl, fetchurl, overrideCC, wrapCC }:
1
1
+
{ newScope, stdenv, isl, fetchurl, overrideCC, wrapCC, ccWrapperFun }:
2
2
let
3
3
callPackage = newScope (self // { inherit stdenv isl version fetch; });
4
4
···
24
24
25
25
clang = wrapCC self.clang-unwrapped;
26
26
27
27
+
libcxxClang = ccWrapperFun {
28
28
+
cc = self.clang-unwrapped;
29
29
+
isClang = true;
30
30
+
inherit (self) stdenv;
31
31
+
/* FIXME is this right? */
32
32
+
inherit (stdenv.cc) libc nativeTools nativeLibc;
33
33
+
extraPackages = [ self.libcxx self.libcxxabi ];
34
34
+
};
35
35
+
27
36
stdenv = overrideCC stdenv self.clang;
37
37
+
38
38
+
libcxxStdenv = overrideCC stdenv self.libcxxClang;
28
39
29
40
lldb = callPackage ./lldb.nix {};
30
41
+12
-1
pkgs/development/compilers/llvm/3.9/default.nix
···
1
1
-
{ newScope, stdenv, isl, fetchurl, overrideCC, wrapCC, darwin }:
1
1
+
{ newScope, stdenv, isl, fetchurl, overrideCC, wrapCC, darwin, ccWrapperFun }:
2
2
let
3
3
callPackage = newScope (self // { inherit stdenv isl version fetch; });
4
4
···
24
24
25
25
clang = wrapCC self.clang-unwrapped;
26
26
27
27
+
libcxxClang = ccWrapperFun {
28
28
+
cc = self.clang-unwrapped;
29
29
+
isClang = true;
30
30
+
inherit (self) stdenv;
31
31
+
/* FIXME is this right? */
32
32
+
inherit (stdenv.cc) libc nativeTools nativeLibc;
33
33
+
extraPackages = [ self.libcxx self.libcxxabi ];
34
34
+
};
35
35
+
27
36
stdenv = overrideCC stdenv self.clang;
37
37
+
38
38
+
libcxxStdenv = overrideCC stdenv self.libcxxClang;
28
39
29
40
lldb = callPackage ./lldb.nix {};
30
41
+4
-2
pkgs/top-level/all-packages.nix
···
4520
4520
4521
4521
#Use this instead of stdenv to build with clang
4522
4522
clangStdenv = if stdenv.isDarwin then stdenv else lowPrio llvmPackages.stdenv;
4523
4523
-
libcxxStdenv = stdenvAdapters.overrideCC stdenv (clangWrapSelf llvmPackages.clang-unwrapped);
4523
4523
+
libcxxStdenv = lowPrio llvmPackages.libcxxStdenv;
4524
4524
4525
4525
clean = callPackage ../development/compilers/clean { };
4526
4526
···
5247
5247
inherit libc extraBuildCommands;
5248
5248
};
5249
5249
5250
5250
-
wrapCC = wrapCCWith (callPackage ../build-support/cc-wrapper) stdenv.cc.libc "";
5250
5250
+
ccWrapperFun = callPackage ../build-support/cc-wrapper;
5251
5251
+
5252
5252
+
wrapCC = wrapCCWith ccWrapperFun stdenv.cc.libc "";
5251
5253
# legacy version, used for gnat bootstrapping
5252
5254
wrapGCC-old = baseGCC: callPackage ../build-support/gcc-wrapper-old {
5253
5255
nativeTools = stdenv.cc.nativeTools or false;