summary refs log tree commit diff
path: root/pkgs/development/compilers
diff options
context:
space:
mode:
authorMichael Weiss <dev.primeos@gmail.com>2021-04-01 19:25:58 +0200
committerMichael Weiss <dev.primeos@gmail.com>2021-04-01 20:08:20 +0200
commitcc12a82cf2340172235dfd85aa49878c962ddc55 (patch)
tree7894b474cfb0159be03b25f94ab6a6096d1f9b6d /pkgs/development/compilers
parent619913c789358c198747b95350b29318540bad0f (diff)
downloadnixpkgs-cc12a82cf2340172235dfd85aa49878c962ddc55.tar
nixpkgs-cc12a82cf2340172235dfd85aa49878c962ddc55.tar.gz
nixpkgs-cc12a82cf2340172235dfd85aa49878c962ddc55.tar.bz2
nixpkgs-cc12a82cf2340172235dfd85aa49878c962ddc55.tar.lz
nixpkgs-cc12a82cf2340172235dfd85aa49878c962ddc55.tar.xz
nixpkgs-cc12a82cf2340172235dfd85aa49878c962ddc55.tar.zst
nixpkgs-cc12a82cf2340172235dfd85aa49878c962ddc55.zip
llvmPackages_12: Fix libunwind, openmp, libcxx, and libcxxabi
All builds succeed now: nix-build -A llvmPackages_12
Diffstat (limited to 'pkgs/development/compilers')
-rw-r--r--pkgs/development/compilers/llvm/12/libc++/default.nix9
-rw-r--r--pkgs/development/compilers/llvm/12/libc++abi.nix6
-rw-r--r--pkgs/development/compilers/llvm/12/libcxxabi-no-threads.patch12
-rw-r--r--pkgs/development/compilers/llvm/12/libunwind.nix9
-rw-r--r--pkgs/development/compilers/llvm/12/openmp.nix10
5 files changed, 11 insertions, 35 deletions
diff --git a/pkgs/development/compilers/llvm/12/libc++/default.nix b/pkgs/development/compilers/llvm/12/libc++/default.nix
index 8f2672cc0d9..22502cc90c1 100644
--- a/pkgs/development/compilers/llvm/12/libc++/default.nix
+++ b/pkgs/development/compilers/llvm/12/libc++/default.nix
@@ -15,14 +15,7 @@ stdenv.mkDerivation {
     mv llvm-* llvm
   '';
 
-  patches = [
-    (fetchpatch {
-      # Backported from LLVM 12, avoids clashes with commonly used "block.h" header.
-      url = "https://github.com/llvm/llvm-project/commit/19bc9ea480b60b607a3e303f20c7a3a2ea553369.patch";
-      sha256 = "sha256-aWa66ogmPkG0xHzSfcpD0qZyZQcNKwLV44js4eiun78=";
-      stripLen = 1;
-    })
-  ] ++ lib.optional stdenv.hostPlatform.isMusl ../../libcxx-0001-musl-hacks.patch;
+  patches = lib.optional stdenv.hostPlatform.isMusl ../../libcxx-0001-musl-hacks.patch;
 
   preConfigure = lib.optionalString stdenv.hostPlatform.isMusl ''
     patchShebangs utils/cat_files.py
diff --git a/pkgs/development/compilers/llvm/12/libc++abi.nix b/pkgs/development/compilers/llvm/12/libc++abi.nix
index 24ef8168fcd..1466ac2b230 100644
--- a/pkgs/development/compilers/llvm/12/libc++abi.nix
+++ b/pkgs/development/compilers/llvm/12/libc++abi.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, cmake, fetch, libcxx, libunwind, llvm, version
+{ lib, stdenv, cmake, python3, fetch, libcxx, libunwind, llvm, version
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
 
   src = fetch "libcxxabi" "1vdc6zld5rlbrbpxf0fxs0m6k1cabpi82ksiwgj1pmhx8l140n0q";
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake python3 ];
   buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
 
   cmakeFlags = lib.optionals (stdenv.hostPlatform.useLLVM or false) [
@@ -21,8 +21,6 @@ stdenv.mkDerivation {
     "-DLIBCXXABI_ENABLE_SHARED=OFF"
   ];
 
-  patches = [ ./libcxxabi-no-threads.patch ];
-
   postUnpack = ''
     unpackFile ${libcxx.src}
     mv libcxx-* libcxx
diff --git a/pkgs/development/compilers/llvm/12/libcxxabi-no-threads.patch b/pkgs/development/compilers/llvm/12/libcxxabi-no-threads.patch
deleted file mode 100644
index 787f3e16500..00000000000
--- a/pkgs/development/compilers/llvm/12/libcxxabi-no-threads.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 4138acf..41b4763 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -362,6 +362,7 @@ if (NOT LIBCXXABI_ENABLE_THREADS)
-                         " is also set to ON.")
-   endif()
-   add_definitions(-D_LIBCXXABI_HAS_NO_THREADS)
-+  add_definitions(-D_LIBCPP_HAS_NO_THREADS)
- endif()
- 
- if (LIBCXXABI_HAS_EXTERNAL_THREAD_API)
diff --git a/pkgs/development/compilers/llvm/12/libunwind.nix b/pkgs/development/compilers/llvm/12/libunwind.nix
index eba07ac76be..cb57466df26 100644
--- a/pkgs/development/compilers/llvm/12/libunwind.nix
+++ b/pkgs/development/compilers/llvm/12/libunwind.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, version, fetch, cmake, fetchpatch
+{ lib, stdenv, version, fetch, libcxx, llvm, cmake
 , enableShared ? !stdenv.hostPlatform.isStatic
 }:
 
@@ -8,6 +8,13 @@ stdenv.mkDerivation rec {
 
   src = fetch pname "18n3k2kf6pyvzspnz1i22czbgi14kmch76fxml8kvhky7mw7v1yz";
 
+  postUnpack = ''
+    unpackFile ${libcxx.src}
+    mv libcxx-* libcxx
+    unpackFile ${llvm.src}
+    mv llvm-* llvm
+  '';
+
   nativeBuildInputs = [ cmake ];
 
   cmakeFlags = lib.optional (!enableShared) "-DLIBUNWIND_ENABLE_SHARED=OFF";
diff --git a/pkgs/development/compilers/llvm/12/openmp.nix b/pkgs/development/compilers/llvm/12/openmp.nix
index 3cb5a09de8f..891ca83247e 100644
--- a/pkgs/development/compilers/llvm/12/openmp.nix
+++ b/pkgs/development/compilers/llvm/12/openmp.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetch
-, fetchpatch
 , cmake
 , llvm
 , perl
@@ -14,15 +13,6 @@ stdenv.mkDerivation rec {
 
   src = fetch pname "0kw1g7ndvwi0g7lx5d55mp81h9vffxz820l9r2wjdvvfs3dsyq05";
 
-  patches = [
-    # Fix compilation on aarch64-darwin, remove after the next release.
-    (fetchpatch {
-      url = "https://github.com/llvm/llvm-project/commit/7b5254223acbf2ef9cd278070c5a84ab278d7e5f.patch";
-      sha256 = "sha256-A+9/IVIoazu68FK5H5CiXcOEYe1Hpp4xTx2mIw7m8Es=";
-      stripLen = 1;
-    })
-  ];
-
   nativeBuildInputs = [ cmake perl ];
   buildInputs = [ llvm ];