Merge master into stdenv-updates

Conflicts:
	pkgs/applications/version-management/gource/default.nix
	pkgs/top-level/all-packages.nix
This commit is contained in:
Vladimír Čunát
2014-01-20 19:39:28 +01:00
121 changed files with 1468 additions and 653 deletions
@@ -1,162 +0,0 @@
diff -Naur cfe-3.3.src-orig/lib/Driver/ToolChains.cpp cfe-3.3.src/lib/Driver/ToolChains.cpp
--- cfe-3.3.src-orig/lib/Driver/ToolChains.cpp 2013-05-06 12:26:41.000000000 -0400
+++ cfe-3.3.src/lib/Driver/ToolChains.cpp 2013-06-21 19:28:12.120364372 -0400
@@ -2318,17 +2318,6 @@
Paths);
}
}
- addPathIfExists(SysRoot + "/lib/" + MultiarchTriple, Paths);
- addPathIfExists(SysRoot + "/lib/../" + Multilib, Paths);
- addPathIfExists(SysRoot + "/usr/lib/" + MultiarchTriple, Paths);
- addPathIfExists(SysRoot + "/usr/lib/../" + Multilib, Paths);
-
- // Try walking via the GCC triple path in case of multiarch GCC
- // installations with strange symlinks.
- if (GCCInstallation.isValid())
- addPathIfExists(SysRoot + "/usr/lib/" + GCCInstallation.getTriple().str() +
- "/../../" + Multilib, Paths);
-
// Add the non-multilib suffixed paths (if potentially different).
if (GCCInstallation.isValid()) {
const std::string &LibPath = GCCInstallation.getParentLibPath();
@@ -2341,8 +2330,6 @@
addPathIfExists(LibPath, Paths);
}
}
- addPathIfExists(SysRoot + "/lib", Paths);
- addPathIfExists(SysRoot + "/usr/lib", Paths);
IsPIEDefault = SanitizerArgs(*this, Args).hasZeroBaseShadow();
}
@@ -2395,9 +2382,6 @@
if (DriverArgs.hasArg(options::OPT_nostdinc))
return;
- if (!DriverArgs.hasArg(options::OPT_nostdlibinc))
- addSystemInclude(DriverArgs, CC1Args, SysRoot + "/usr/local/include");
-
if (!DriverArgs.hasArg(options::OPT_nobuiltininc)) {
llvm::sys::Path P(D.ResourceDir);
P.appendComponent("include");
@@ -2479,26 +2463,6 @@
"/usr/include/powerpc64-linux-gnu"
};
ArrayRef<StringRef> MultiarchIncludeDirs;
- if (getTriple().getArch() == llvm::Triple::x86_64) {
- MultiarchIncludeDirs = X86_64MultiarchIncludeDirs;
- } else if (getTriple().getArch() == llvm::Triple::x86) {
- MultiarchIncludeDirs = X86MultiarchIncludeDirs;
- } else if (getTriple().getArch() == llvm::Triple::aarch64) {
- MultiarchIncludeDirs = AArch64MultiarchIncludeDirs;
- } else if (getTriple().getArch() == llvm::Triple::arm) {
- if (getTriple().getEnvironment() == llvm::Triple::GNUEABIHF)
- MultiarchIncludeDirs = ARMHFMultiarchIncludeDirs;
- else
- MultiarchIncludeDirs = ARMMultiarchIncludeDirs;
- } else if (getTriple().getArch() == llvm::Triple::mips) {
- MultiarchIncludeDirs = MIPSMultiarchIncludeDirs;
- } else if (getTriple().getArch() == llvm::Triple::mipsel) {
- MultiarchIncludeDirs = MIPSELMultiarchIncludeDirs;
- } else if (getTriple().getArch() == llvm::Triple::ppc) {
- MultiarchIncludeDirs = PPCMultiarchIncludeDirs;
- } else if (getTriple().getArch() == llvm::Triple::ppc64) {
- MultiarchIncludeDirs = PPC64MultiarchIncludeDirs;
- }
for (ArrayRef<StringRef>::iterator I = MultiarchIncludeDirs.begin(),
E = MultiarchIncludeDirs.end();
I != E; ++I) {
@@ -2510,13 +2474,6 @@
if (getTriple().getOS() == llvm::Triple::RTEMS)
return;
-
- // Add an include of '/include' directly. This isn't provided by default by
- // system GCCs, but is often used with cross-compiling GCCs, and harmless to
- // add even when Clang is acting as-if it were a system compiler.
- addExternCSystemInclude(DriverArgs, CC1Args, SysRoot + "/include");
-
- addExternCSystemInclude(DriverArgs, CC1Args, SysRoot + "/usr/include");
}
/// \brief Helper to add the three variant paths for a libstdc++ installation.
diff -Naur cfe-3.3.src-orig/lib/Driver/Tools.cpp cfe-3.3.src/lib/Driver/Tools.cpp
--- cfe-3.3.src-orig/lib/Driver/Tools.cpp 2013-05-30 14:01:30.000000000 -0400
+++ cfe-3.3.src/lib/Driver/Tools.cpp 2013-06-21 19:30:51.604726574 -0400
@@ -5976,43 +5976,6 @@
}
}
- if (ToolChain.getArch() == llvm::Triple::arm ||
- ToolChain.getArch() == llvm::Triple::thumb ||
- (!Args.hasArg(options::OPT_static) &&
- !Args.hasArg(options::OPT_shared))) {
- CmdArgs.push_back("-dynamic-linker");
- if (isAndroid)
- CmdArgs.push_back("/system/bin/linker");
- else if (ToolChain.getArch() == llvm::Triple::x86)
- CmdArgs.push_back("/lib/ld-linux.so.2");
- else if (ToolChain.getArch() == llvm::Triple::aarch64)
- CmdArgs.push_back("/lib/ld-linux-aarch64.so.1");
- else if (ToolChain.getArch() == llvm::Triple::arm ||
- ToolChain.getArch() == llvm::Triple::thumb) {
- if (ToolChain.getTriple().getEnvironment() == llvm::Triple::GNUEABIHF)
- CmdArgs.push_back("/lib/ld-linux-armhf.so.3");
- else
- CmdArgs.push_back("/lib/ld-linux.so.3");
- }
- else if (ToolChain.getArch() == llvm::Triple::mips ||
- ToolChain.getArch() == llvm::Triple::mipsel)
- CmdArgs.push_back("/lib/ld.so.1");
- else if (ToolChain.getArch() == llvm::Triple::mips64 ||
- ToolChain.getArch() == llvm::Triple::mips64el) {
- if (hasMipsN32ABIArg(Args))
- CmdArgs.push_back("/lib32/ld.so.1");
- else
- CmdArgs.push_back("/lib64/ld.so.1");
- }
- else if (ToolChain.getArch() == llvm::Triple::ppc)
- CmdArgs.push_back("/lib/ld.so.1");
- else if (ToolChain.getArch() == llvm::Triple::ppc64 ||
- ToolChain.getArch() == llvm::Triple::systemz)
- CmdArgs.push_back("/lib64/ld64.so.1");
- else
- CmdArgs.push_back("/lib64/ld-linux-x86-64.so.2");
- }
-
CmdArgs.push_back("-o");
CmdArgs.push_back(Output.getFilename());
diff -Naur cfe-3.3.src-orig/lib/Frontend/InitHeaderSearch.cpp cfe-3.3.src/lib/Frontend/InitHeaderSearch.cpp
--- cfe-3.3.src-orig/lib/Frontend/InitHeaderSearch.cpp 2013-04-29 21:21:43.000000000 -0400
+++ cfe-3.3.src/lib/Frontend/InitHeaderSearch.cpp 2013-06-21 19:32:47.627016565 -0400
@@ -225,20 +225,6 @@
const HeaderSearchOptions &HSOpts) {
llvm::Triple::OSType os = triple.getOS();
- if (HSOpts.UseStandardSystemIncludes) {
- switch (os) {
- case llvm::Triple::FreeBSD:
- case llvm::Triple::NetBSD:
- case llvm::Triple::OpenBSD:
- case llvm::Triple::Bitrig:
- break;
- default:
- // FIXME: temporary hack: hard-coded paths.
- AddPath("/usr/local/include", System, false);
- break;
- }
- }
-
// Builtin includes use #include_next directives and should be positioned
// just prior C include dirs.
if (HSOpts.UseBuiltinIncludes) {
@@ -332,9 +318,6 @@
default:
break;
}
-
- if ( os != llvm::Triple::RTEMS )
- AddPath("/usr/include", ExternCSystem, false);
}
void InitHeaderSearch::
@@ -1,9 +0,0 @@
--- a/utils/TableGen/CMakeLists.txt (revision 190146)
+++ b/utils/TableGen/CMakeLists.txt (working copy)
@@ -1,4 +1,5 @@
set(LLVM_LINK_COMPONENTS Support)
+set(LLVM_TOOLS_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR})
add_tablegen(clang-tblgen CLANG
ClangASTNodesEmitter.cpp
-41
View File
@@ -1,41 +0,0 @@
{ stdenv, fetchurl, perl, groff, llvm, cmake, libxml2, python }:
let
version = "3.3";
gccReal = if (stdenv.gcc.gcc or null) == null then stdenv.gcc else stdenv.gcc.gcc;
in
stdenv.mkDerivation {
name = "clang-${version}";
buildInputs = [ perl llvm groff cmake libxml2 python ];
patches = [ ./clang-tablegen-dir.patch ] ++
stdenv.lib.optional (stdenv.gcc.libc != null) ./clang-purity.patch;
cmakeFlags = [
"-DCLANG_PATH_TO_LLVM_BUILD=${llvm}"
"-DCMAKE_BUILD_TYPE=Release"
"-DLLVM_TARGETS_TO_BUILD=all"
"-DGCC_INSTALL_PREFIX=${gccReal}"
] ++ stdenv.lib.optionals (stdenv.gcc.libc != null) [
"-DC_INCLUDE_DIRS=${stdenv.gcc.libc}/include/"
];
enableParallelBuilding = true;
src = fetchurl {
url = "http://llvm.org/releases/${version}/cfe-${version}.src.tar.gz";
sha256 = "15mrvw43s4frk1j49qr4v5viq68h8qlf10qs6ghd6mrsmgj5vddi";
};
passthru = { gcc = stdenv.gcc.gcc; };
meta = {
homepage = http://clang.llvm.org/;
description = "A C language family frontend for LLVM";
license = "BSD";
maintainers = with stdenv.lib.maintainers; [viric shlevy];
platforms = with stdenv.lib.platforms; all;
};
}
+1 -1
View File
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
description = "Collection of modular and reusable compiler and toolchain technologies";
homepage = http://llvm.org/;
license = licenses.bsd3;
maintainers = with maintainers; [ lovek323 raskin shlevy viric ];
maintainers = with maintainers; [ lovek323 raskin viric ];
platforms = platforms.all;
};
}
@@ -1,18 +1,18 @@
{stdenv, fetchurl, llvm, gmp, mpfr, mpc}:
{stdenv, fetchurl, llvm, gmp, mpfr, mpc, ncurses, zlib}:
stdenv.mkDerivation rec {
version = "3.3";
version = "3.4";
name = "dragonegg-${version}";
src = fetchurl {
url = "http://llvm.org/releases/${version}/${name}.src.tar.gz";
sha256 = "1kfryjaz5hxh3q6m50qjrwnyjb3smg2zyh025lhz9km3x4kshlri";
sha256 = "1733czbvby1ww3xkwcwmm0km0bpwhfyxvf56wb0zv5gksp3kbgrl";
};
# The gcc the plugin will be built for (the same used building dragonegg)
GCC = "gcc";
buildInputs = [ llvm gmp mpfr mpc ];
buildInputs = [ llvm gmp mpfr mpc ncurses zlib ];
installPhase = ''
mkdir -p $out/lib $out/share/doc/${name}
+89
View File
@@ -0,0 +1,89 @@
{ stdenv
, fetchurl
, perl, groff
, cmake
, libxml2
, python
, libffi
, zlib
, ncurses
, isl
, gmp
, doxygen
, binutils
, swig
, which
, libedit
, valgrind
}:
let
version = "3.4";
fetch = name: sha256: fetchurl {
url = "http://llvm.org/releases/${version}/${name}-${version}.src.tar.gz";
inherit sha256;
};
inherit (stdenv.lib) concatStrings mapAttrsToList;
in stdenv.mkDerivation {
name = "llvm-full-${version}";
unpackPhase = ''
unpackFile ${fetch "llvm" "0a169ba045r4apb9cv6ncrwl83l7yiajnzirkcdlhj1cd4nn3995"}
mv llvm-${version} llvm
sourceRoot=$PWD/llvm
${concatStrings (mapAttrsToList (name: { location, sha256 }: ''
unpackFile ${fetch name sha256}
mv ${name}-${version} $sourceRoot/${location}
'') {
clang = { location = "tools/clang"; sha256 = "06rb4j1ifbznl3gfhl98s7ilj0ns01p7y7zap4p7ynmqnc6pia92"; };
clang-tools-extra = { location = "tools/clang/tools/extra"; sha256 = "1d1822mwxxl9agmyacqjw800kzz5x8xr0sdmi8fgx5xfa5sii1ds"; };
compiler-rt = { location = "projects/compiler-rt"; sha256 = "0p5b6varxdqn7q3n77xym63hhq4qqxd2981pfpa65r1w72qqjz7k"; };
lld = { location = "tools/lld"; sha256 = "1sd4scqynryfrmcc4h0ljgwn2dgjmbbmf38z50ya6l0janpd2nxz"; };
lldb = { location = "tools/lldb"; sha256 = "0h8cmjrhjhigk7k2qll1pcf6jfgmbdzkzfz2i048pkfg851s0x4g"; };
polly = { location = "tools/polly"; sha256 = "1rqflmgzg1vzjm0r32c5ck8x3q0qm3g0hh8ggbjazh6x7nvmy6lz"; };
})}
sed -i 's|/usr/bin/env||' \
$sourceRoot/tools/lldb/scripts/Python/finish-swig-Python-LLDB.sh \
$sourceRoot/tools/lldb/scripts/Python/build-swig-Python.sh
'';
buildInputs = [ perl
groff
cmake
libxml2
python
libffi
zlib
ncurses
isl
gmp
doxygen
swig
which
libedit
valgrind
];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DLLVM_ENABLE_FFI=ON"
"-DGCC_INSTALL_PREFIX=${stdenv.gcc.gcc}"
"-DC_INCLUDE_DIRS=${stdenv.gcc.libc}/include/"
"-DLLVM_BINUTILS_INCDIR=${binutils}/include"
"-DCMAKE_CXX_FLAGS=-std=c++11"
];
passthru.gcc = stdenv.gcc.gcc;
enableParallelBuilding = true;
meta = {
description = "Collection of modular and reusable compiler and toolchain technologies";
homepage = http://llvm.org/;
license = stdenv.lib.licenses.bsd3;
maintainers = [ stdenv.lib.maintainers.shlevy ];
platforms = stdenv.lib.platforms.all;
};
}