clang builds on darwin now
Also, get rid of the clang bootstrap, there's no need for it svn path=/nixpkgs/trunk/; revision=30973
This commit is contained in:
parent
66b4a5a009
commit
ec305ac161
2 changed files with 9 additions and 13 deletions
|
@ -1,11 +1,11 @@
|
||||||
{ stdenv, fetchurl, perl, groff, llvm, cmake }:
|
{ stdenv, fetchurl, perl, groff, llvm, cmake, darwinInstallNameToolUtility }:
|
||||||
|
|
||||||
let version = "3.0"; in
|
let version = "3.0"; in
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "clang-${version}";
|
name = "clang-${version}";
|
||||||
|
|
||||||
buildInputs = [ perl llvm groff cmake ];
|
buildInputs = [ perl llvm groff cmake ] ++ stdenv.lib.optional stdenv.isDarwin darwinInstallNameToolUtility;
|
||||||
|
|
||||||
patches = stdenv.lib.optionals (stdenv.gcc.libc != null)
|
patches = stdenv.lib.optionals (stdenv.gcc.libc != null)
|
||||||
[ ./clang-include-paths.patch ./clang-ld-flags.patch ];
|
[ ./clang-include-paths.patch ./clang-ld-flags.patch ];
|
||||||
|
@ -33,7 +33,7 @@ stdenv.mkDerivation {
|
||||||
description = "A C language family frontend for LLVM";
|
description = "A C language family frontend for LLVM";
|
||||||
license = "BSD";
|
license = "BSD";
|
||||||
maintainers = with stdenv.lib.maintainers; [viric shlevy];
|
maintainers = with stdenv.lib.maintainers; [viric shlevy];
|
||||||
platforms = with stdenv.lib.platforms; linux;
|
platforms = with stdenv.lib.platforms; all;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1665,17 +1665,12 @@ let
|
||||||
|
|
||||||
ccl = builderDefsPackage ../development/compilers/ccl {};
|
ccl = builderDefsPackage ../development/compilers/ccl {};
|
||||||
|
|
||||||
clangBootUnwrapped = callPackage ../development/compilers/llvm/clang.nix {
|
clangUnwrapped = callPackage ../development/compilers/llvm/clang.nix {
|
||||||
# There is a bug in gcc-4.5 that prevents building a release build of
|
# There is a bug in gcc-4.5 that prevents building a release build of
|
||||||
# clang-3.0
|
# clang-3.0
|
||||||
stdenv = stdenvAdapters.overrideGCC stdenv gcc46;
|
stdenv = if stdenv.isLinux
|
||||||
};
|
then (stdenvAdapters.overrideGCC stdenv gcc46)
|
||||||
|
else stdenv;
|
||||||
clangBoot = wrapClang clangBootUnwrapped;
|
|
||||||
|
|
||||||
clangUnwrapped = let clangBootStdenv = stdenvAdapters.overrideGCC stdenv clangBoot; in clangBootUnwrapped.override {
|
|
||||||
stdenv = clangBootStdenv;
|
|
||||||
llvm = llvm.override { stdenv = clangBootStdenv; };
|
|
||||||
};
|
};
|
||||||
|
|
||||||
clang = wrapClang clangUnwrapped;
|
clang = wrapClang clangUnwrapped;
|
||||||
|
@ -2499,7 +2494,8 @@ let
|
||||||
clang = baseClang;
|
clang = baseClang;
|
||||||
libc = glibc;
|
libc = glibc;
|
||||||
shell = bash;
|
shell = bash;
|
||||||
inherit stdenv binutils coreutils zlib;
|
binutils = stdenv.gcc.binutils;
|
||||||
|
inherit stdenv coreutils zlib;
|
||||||
};
|
};
|
||||||
|
|
||||||
wrapClang = wrapClangWith (import ../build-support/clang-wrapper) glibc;
|
wrapClang = wrapClangWith (import ../build-support/clang-wrapper) glibc;
|
||||||
|
|
Loading…
Reference in a new issue