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:
Shea Levy 2011-12-19 23:58:57 +00:00
parent 66b4a5a009
commit ec305ac161
2 changed files with 9 additions and 13 deletions

View file

@ -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;
}; };
} }

View file

@ -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;