llvmPackages: Fix more inconsistencies

The main thing was using `llvm_meta` in all versions.

Secondarily:

 - libunwindx7: Forgot to split outputs

 - libcxx{,abi} 12: Forgot to apply output-splitting patches.

 - simplify `useLLVM` stdenv-switching logic.

 - openmp always gets its own directory
This commit is contained in:
John Ericson
2021-05-12 00:16:11 +00:00
parent 37194a325d
commit e830db4320
82 changed files with 1489 additions and 623 deletions
@@ -1,4 +1,4 @@
{ lib, stdenv
{ lib, stdenv, llvm_meta
, buildLlvmTools
, fetch
, cmake
@@ -6,7 +6,7 @@
, version
}:
stdenv.mkDerivation {
stdenv.mkDerivation rec {
pname = "lld";
inherit version;
@@ -27,11 +27,16 @@ stdenv.mkDerivation {
outputs = [ "out" "lib" "dev" ];
meta = {
description = "The LLVM Linker";
homepage = "https://lld.llvm.org/";
license = lib.licenses.ncsa;
platforms = lib.platforms.all;
badPlatforms = [ "x86_64-darwin" ];
meta = llvm_meta // {
homepage = "https://lld.llvm.org/";
description = "The LLVM linker";
longDescription = ''
LLD is a linker from the LLVM project that is a drop-in replacement for
system linkers and runs much faster than them. It also provides features
that are useful for toolchain developers.
The linker supports ELF (Unix), PE/COFF (Windows), and Mach-O (macOS)
in descending order of completeness. Internally, LLD consists
of several different linkers.
'';
};
}