diff options
author | John Ericson <John.Ericson@Obsidian.Systems> | 2018-06-14 10:22:33 -0400 |
---|---|---|
committer | John Ericson <John.Ericson@Obsidian.Systems> | 2018-06-14 19:22:15 -0400 |
commit | 6e7e22da70850e18d7949b95b215c011b9afda70 (patch) | |
tree | a3f196df67a891974613a40c4f064fd09e0fc2fb /pkgs/development/compilers/llvm/5/llvm.nix | |
parent | fc9644d4c9c9d29958e9bcf1676d48d4b3026bb4 (diff) | |
download | nixlib-6e7e22da70850e18d7949b95b215c011b9afda70.tar nixlib-6e7e22da70850e18d7949b95b215c011b9afda70.tar.gz nixlib-6e7e22da70850e18d7949b95b215c011b9afda70.tar.bz2 nixlib-6e7e22da70850e18d7949b95b215c011b9afda70.tar.lz nixlib-6e7e22da70850e18d7949b95b215c011b9afda70.tar.xz nixlib-6e7e22da70850e18d7949b95b215c011b9afda70.tar.zst nixlib-6e7e22da70850e18d7949b95b215c011b9afda70.zip |
llvm 5: split out compiler-rt and remove libcxxabi dep
We already did them on non-mass-rebuild llvm 6. Also, this allows simplifying the stdenv booting. We were missing the libcxxabi dep in compile-rt in llvm 6, so fixed that too.
Diffstat (limited to 'pkgs/development/compilers/llvm/5/llvm.nix')
-rw-r--r-- | pkgs/development/compilers/llvm/5/llvm.nix | 16 |
1 files changed, 0 insertions, 16 deletions
diff --git a/pkgs/development/compilers/llvm/5/llvm.nix b/pkgs/development/compilers/llvm/5/llvm.nix index 5070de1f48b1..8809859b5905 100644 --- a/pkgs/development/compilers/llvm/5/llvm.nix +++ b/pkgs/development/compilers/llvm/5/llvm.nix @@ -11,7 +11,6 @@ , version , release_version , zlib -, compiler-rt_src , libcxxabi , debugVersion ? false , enableManpages ? false @@ -32,8 +31,6 @@ in stdenv.mkDerivation (rec { unpackFile ${src} mv llvm-${version}* llvm sourceRoot=$PWD/llvm - unpackFile ${compiler-rt_src} - mv compiler-rt-* $sourceRoot/projects/compiler-rt ''; outputs = [ "out" "python" ] @@ -48,15 +45,7 @@ in stdenv.mkDerivation (rec { propagatedBuildInputs = [ ncurses zlib ]; - # TSAN requires XPC on Darwin, which we have no public/free source files for. We can depend on the Apple frameworks - # to get it, but they're unfree. Since LLVM is rather central to the stdenv, we patch out TSAN support so that Hydra - # can build this. If we didn't do it, basically the entire nixpkgs on Darwin would have an unfree dependency and we'd - # get no binary cache for the entire platform. If you really find yourself wanting the TSAN, make this controllable by - # a flag and turn the flag off during the stdenv build. postPatch = stdenv.lib.optionalString stdenv.isDarwin '' - substituteInPlace ./projects/compiler-rt/cmake/config-ix.cmake \ - --replace 'set(COMPILER_RT_HAS_TSAN TRUE)' 'set(COMPILER_RT_HAS_TSAN FALSE)' - substituteInPlace cmake/modules/AddLLVM.cmake \ --replace 'set(_install_name_dir INSTALL_NAME_DIR "@rpath")' "set(_install_name_dir INSTALL_NAME_DIR "$lib/lib")" \ --replace 'set(_install_rpath "@loader_path/../lib" ''${extra_libdir})' "" @@ -70,9 +59,6 @@ in stdenv.mkDerivation (rec { substituteInPlace unittests/Support/CMakeLists.txt \ --replace "Path.cpp" "" rm unittests/Support/Path.cpp - - # Revert compiler-rt commit that makes codesign mandatory - patch -p1 -i ${./compiler-rt-codesign.patch} -d projects/compiler-rt '' + stdenv.lib.optionalString stdenv.isAarch64 '' patch -p0 < ${../aarch64.patch} '' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl '' @@ -80,7 +66,6 @@ in stdenv.mkDerivation (rec { substituteInPlace unittests/Support/CMakeLists.txt \ --replace "add_subdirectory(DynamicLibrary)" "" rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp - patch -p1 -i ${./sanitizers-nongnu.patch} -d projects/compiler-rt ''; # hacky fix: created binaries need to be run before installation @@ -95,7 +80,6 @@ in stdenv.mkDerivation (rec { "-DLLVM_BUILD_TESTS=ON" "-DLLVM_ENABLE_FFI=ON" "-DLLVM_ENABLE_RTTI=ON" - "-DCOMPILER_RT_INCLUDE_TESTS=OFF" # FIXME: requires clang source code ] ++ stdenv.lib.optional enableSharedLibraries "-DLLVM_LINK_LLVM_DYLIB=ON" |