llvm-packages: apply cc-wrapper/stdenv changes to older versions
This commit is contained in:
parent
ac88515052
commit
ad486c48a6
@ -1,4 +1,7 @@
|
|||||||
{ newScope, stdenv, cmake, libxml2, python2, isl, fetchurl, overrideCC, wrapCC, ccWrapperFun }:
|
{ newScope, stdenv, libstdcxxHook, cmake, libxml2, python2, isl, fetchurl
|
||||||
|
, overrideCC, wrapCC, ccWrapperFun, darwin
|
||||||
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
callPackage = newScope (self // { inherit stdenv cmake libxml2 python2 isl version fetch; });
|
callPackage = newScope (self // { inherit stdenv cmake libxml2 python2 isl version fetch; });
|
||||||
|
|
||||||
@ -22,20 +25,35 @@ let
|
|||||||
inherit clang-tools-extra_src stdenv;
|
inherit clang-tools-extra_src stdenv;
|
||||||
};
|
};
|
||||||
|
|
||||||
clang = wrapCC self.clang-unwrapped;
|
clang = if stdenv.cc.isGNU then self.libstdcxxClang else self.libcxxClang;
|
||||||
|
|
||||||
|
libstdcxxClang = ccWrapperFun {
|
||||||
|
cc = self.clang-unwrapped;
|
||||||
|
/* FIXME is this right? */
|
||||||
|
inherit (stdenv.cc) libc nativeTools nativeLibc;
|
||||||
|
extraPackages = [ libstdcxxHook ];
|
||||||
|
};
|
||||||
|
|
||||||
libcxxClang = ccWrapperFun {
|
libcxxClang = ccWrapperFun {
|
||||||
cc = self.clang-unwrapped;
|
cc = self.clang-unwrapped;
|
||||||
isClang = true;
|
|
||||||
inherit (self) stdenv;
|
|
||||||
/* FIXME is this right? */
|
/* FIXME is this right? */
|
||||||
inherit (stdenv.cc) libc nativeTools nativeLibc;
|
inherit (stdenv.cc) libc nativeTools nativeLibc;
|
||||||
extraPackages = [ self.libcxx self.libcxxabi ];
|
extraPackages = [ self.libcxx self.libcxxabi ];
|
||||||
};
|
};
|
||||||
|
|
||||||
stdenv = overrideCC stdenv self.clang;
|
stdenv = stdenv.override (drv: {
|
||||||
|
allowedRequisites = null;
|
||||||
|
cc = self.clang;
|
||||||
|
# Don't include the libc++ and libc++abi from the original stdenv.
|
||||||
|
extraBuildInputs = stdenv.lib.optional stdenv.isDarwin darwin.CF;
|
||||||
|
});
|
||||||
|
|
||||||
libcxxStdenv = overrideCC stdenv self.libcxxClang;
|
libcxxStdenv = stdenv.override (drv: {
|
||||||
|
allowedRequisites = null;
|
||||||
|
cc = self.libcxxClang;
|
||||||
|
# Don't include the libc++ and libc++abi from the original stdenv.
|
||||||
|
extraBuildInputs = stdenv.lib.optional stdenv.isDarwin darwin.CF;
|
||||||
|
});
|
||||||
|
|
||||||
lldb = callPackage ./lldb.nix {};
|
lldb = callPackage ./lldb.nix {};
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ newScope, stdenv, isl, fetchurl, overrideCC, wrapCC, ccWrapperFun }:
|
{ newScope, stdenv, libstdcxxHook, isl, fetchurl, overrideCC, wrapCC, ccWrapperFun, darwin }:
|
||||||
let
|
let
|
||||||
callPackage = newScope (self // { inherit stdenv isl version fetch; });
|
callPackage = newScope (self // { inherit stdenv isl version fetch; });
|
||||||
|
|
||||||
@ -22,20 +22,35 @@ let
|
|||||||
inherit clang-tools-extra_src stdenv;
|
inherit clang-tools-extra_src stdenv;
|
||||||
};
|
};
|
||||||
|
|
||||||
clang = wrapCC self.clang-unwrapped;
|
clang = if stdenv.cc.isGNU then self.libstdcxxClang else self.libcxxClang;
|
||||||
|
|
||||||
|
libstdcxxClang = ccWrapperFun {
|
||||||
|
cc = self.clang-unwrapped;
|
||||||
|
/* FIXME is this right? */
|
||||||
|
inherit (stdenv.cc) libc nativeTools nativeLibc;
|
||||||
|
extraPackages = [ libstdcxxHook ];
|
||||||
|
};
|
||||||
|
|
||||||
libcxxClang = ccWrapperFun {
|
libcxxClang = ccWrapperFun {
|
||||||
cc = self.clang-unwrapped;
|
cc = self.clang-unwrapped;
|
||||||
isClang = true;
|
|
||||||
inherit (self) stdenv;
|
|
||||||
/* FIXME is this right? */
|
/* FIXME is this right? */
|
||||||
inherit (stdenv.cc) libc nativeTools nativeLibc;
|
inherit (stdenv.cc) libc nativeTools nativeLibc;
|
||||||
extraPackages = [ self.libcxx self.libcxxabi ];
|
extraPackages = [ self.libcxx self.libcxxabi ];
|
||||||
};
|
};
|
||||||
|
|
||||||
stdenv = overrideCC stdenv self.clang;
|
stdenv = stdenv.override (drv: {
|
||||||
|
allowedRequisites = null;
|
||||||
|
cc = self.clang;
|
||||||
|
# Don't include the libc++ and libc++abi from the original stdenv.
|
||||||
|
extraBuildInputs = stdenv.lib.optional stdenv.isDarwin darwin.CF;
|
||||||
|
});
|
||||||
|
|
||||||
libcxxStdenv = overrideCC stdenv self.libcxxClang;
|
libcxxStdenv = stdenv.override (drv: {
|
||||||
|
allowedRequisites = null;
|
||||||
|
cc = self.libcxxClang;
|
||||||
|
# Don't include the libc++ and libc++abi from the original stdenv.
|
||||||
|
extraBuildInputs = stdenv.lib.optional stdenv.isDarwin darwin.CF;
|
||||||
|
});
|
||||||
|
|
||||||
lldb = callPackage ./lldb.nix {};
|
lldb = callPackage ./lldb.nix {};
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ newScope, stdenv, isl, fetchurl, overrideCC, wrapCC, darwin, ccWrapperFun }:
|
{ newScope, stdenv, libstdcxxHook, isl, fetchurl, overrideCC, wrapCC, ccWrapperFun, darwin }:
|
||||||
let
|
let
|
||||||
callPackage = newScope (self // { inherit stdenv isl version fetch; });
|
callPackage = newScope (self // { inherit stdenv isl version fetch; });
|
||||||
|
|
||||||
@ -22,20 +22,35 @@ let
|
|||||||
inherit clang-tools-extra_src stdenv;
|
inherit clang-tools-extra_src stdenv;
|
||||||
};
|
};
|
||||||
|
|
||||||
clang = wrapCC self.clang-unwrapped;
|
clang = if stdenv.cc.isGNU then self.libstdcxxClang else self.libcxxClang;
|
||||||
|
|
||||||
|
libstdcxxClang = ccWrapperFun {
|
||||||
|
cc = self.clang-unwrapped;
|
||||||
|
/* FIXME is this right? */
|
||||||
|
inherit (stdenv.cc) libc nativeTools nativeLibc;
|
||||||
|
extraPackages = [ libstdcxxHook ];
|
||||||
|
};
|
||||||
|
|
||||||
libcxxClang = ccWrapperFun {
|
libcxxClang = ccWrapperFun {
|
||||||
cc = self.clang-unwrapped;
|
cc = self.clang-unwrapped;
|
||||||
isClang = true;
|
|
||||||
inherit (self) stdenv;
|
|
||||||
/* FIXME is this right? */
|
/* FIXME is this right? */
|
||||||
inherit (stdenv.cc) libc nativeTools nativeLibc;
|
inherit (stdenv.cc) libc nativeTools nativeLibc;
|
||||||
extraPackages = [ self.libcxx self.libcxxabi ];
|
extraPackages = [ self.libcxx self.libcxxabi ];
|
||||||
};
|
};
|
||||||
|
|
||||||
stdenv = overrideCC stdenv self.clang;
|
stdenv = stdenv.override (drv: {
|
||||||
|
allowedRequisites = null;
|
||||||
|
cc = self.clang;
|
||||||
|
# Don't include the libc++ and libc++abi from the original stdenv.
|
||||||
|
extraBuildInputs = stdenv.lib.optional stdenv.isDarwin darwin.CF;
|
||||||
|
});
|
||||||
|
|
||||||
libcxxStdenv = overrideCC stdenv self.libcxxClang;
|
libcxxStdenv = stdenv.override (drv: {
|
||||||
|
allowedRequisites = null;
|
||||||
|
cc = self.libcxxClang;
|
||||||
|
# Don't include the libc++ and libc++abi from the original stdenv.
|
||||||
|
extraBuildInputs = stdenv.lib.optional stdenv.isDarwin darwin.CF;
|
||||||
|
});
|
||||||
|
|
||||||
lldb = callPackage ./lldb.nix {};
|
lldb = callPackage ./lldb.nix {};
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user