about summary refs log tree commit diff
path: root/pkgs/development/compilers/llvm
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2023-02-23 20:52:35 +0000
committerAlyssa Ross <hi@alyssa.is>2023-02-24 00:06:46 +0000
commitf9afd57302f342f7e72048ea77ed57aef61ffe48 (patch)
treebbe2d661c443f165a419dd22b7e1f259569e2508 /pkgs/development/compilers/llvm
parent2d415debb770f5c47c611c0908a85288e7b7f7bb (diff)
downloadnixlib-f9afd57302f342f7e72048ea77ed57aef61ffe48.tar
nixlib-f9afd57302f342f7e72048ea77ed57aef61ffe48.tar.gz
nixlib-f9afd57302f342f7e72048ea77ed57aef61ffe48.tar.bz2
nixlib-f9afd57302f342f7e72048ea77ed57aef61ffe48.tar.lz
nixlib-f9afd57302f342f7e72048ea77ed57aef61ffe48.tar.xz
nixlib-f9afd57302f342f7e72048ea77ed57aef61ffe48.tar.zst
nixlib-f9afd57302f342f7e72048ea77ed57aef61ffe48.zip
Revert "llvmPackages_15: update licenses"
This reverts commit 386aba3115176b11eb49a0606e9dd17506273776.

As I understand it from reading
<https://llvm.org/docs/DeveloperPolicy.html#copyright-license-and-patents>,
the structure of LLVM licensing is as follows:

 - They're in the process of relicensing to Apache-2.0 WITH LLVM-exception,
   but they haven't got permission to relicense all the code yet.
   This means that some of the code can be used under the new license,
   but not all of it, and it's difficult to know which is which.  This
   license is therefore probably not useful yet, until the relicensing
   effort is commit.

 - While the relicensing effort is ongoing, code being contributed to
   LLVM has to have permission to be used under the old and new
   licensing schemes.  Since the new licensing scheme can't be used
   for all code yet, it only makes sense to use LLVM's code under the
   old licensing scheme at the moment.

 - The old licensing scheme is that code for the LLVM components we
   care about is all available under the NCSA license, and some
   components are optionally available under a different license,
   usually the MIT license, instead.

So I think we should go back to just listing NCSA, or NCSA/MIT, and
forget about the new license until it actually becomes useful,
i.e. LLVM's relicensing effort is complete.
Diffstat (limited to 'pkgs/development/compilers/llvm')
-rw-r--r--pkgs/development/compilers/llvm/15/compiler-rt/default.nix3
-rw-r--r--pkgs/development/compilers/llvm/15/default.nix2
-rw-r--r--pkgs/development/compilers/llvm/15/libcxx/default.nix3
-rw-r--r--pkgs/development/compilers/llvm/15/libcxxabi/default.nix3
-rw-r--r--pkgs/development/compilers/llvm/15/openmp/default.nix3
5 files changed, 13 insertions, 1 deletions
diff --git a/pkgs/development/compilers/llvm/15/compiler-rt/default.nix b/pkgs/development/compilers/llvm/15/compiler-rt/default.nix
index 3c335345f623..6f20d23b32bc 100644
--- a/pkgs/development/compilers/llvm/15/compiler-rt/default.nix
+++ b/pkgs/development/compilers/llvm/15/compiler-rt/default.nix
@@ -151,5 +151,8 @@ stdenv.mkDerivation {
       implementations of run-time libraries for dynamic testing tools such as
       AddressSanitizer, ThreadSanitizer, MemorySanitizer, and DataFlowSanitizer.
     '';
+    # "All of the code in the compiler-rt project is dual licensed under the MIT
+    # license and the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
   };
 }
diff --git a/pkgs/development/compilers/llvm/15/default.nix b/pkgs/development/compilers/llvm/15/default.nix
index 526e79992b88..0cef33ea61cc 100644
--- a/pkgs/development/compilers/llvm/15/default.nix
+++ b/pkgs/development/compilers/llvm/15/default.nix
@@ -84,7 +84,7 @@ in let
   inherit (releaseInfo) release_version version;
 
   llvm_meta = {
-    license     = with lib.licenses; [ ncsa asl20-llvm ];
+    license     = lib.licenses.ncsa;
     maintainers = lib.teams.llvm.members;
     platforms   = lib.platforms.all;
   };
diff --git a/pkgs/development/compilers/llvm/15/libcxx/default.nix b/pkgs/development/compilers/llvm/15/libcxx/default.nix
index 7762df29386e..94374c8a312d 100644
--- a/pkgs/development/compilers/llvm/15/libcxx/default.nix
+++ b/pkgs/development/compilers/llvm/15/libcxx/default.nix
@@ -103,5 +103,8 @@ stdenv.mkDerivation rec {
       libc++ is an implementation of the C++ standard library, targeting C++11,
       C++14 and above.
     '';
+    # "All of the code in libc++ is dual licensed under the MIT license and the
+    # UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
   };
 }
diff --git a/pkgs/development/compilers/llvm/15/libcxxabi/default.nix b/pkgs/development/compilers/llvm/15/libcxxabi/default.nix
index fd99f4553c0c..cb5fa44f0700 100644
--- a/pkgs/development/compilers/llvm/15/libcxxabi/default.nix
+++ b/pkgs/development/compilers/llvm/15/libcxxabi/default.nix
@@ -100,6 +100,9 @@ stdenv.mkDerivation rec {
     longDescription = ''
       libc++abi is a new implementation of low level support for a standard C++ library.
     '';
+    # "All of the code in libc++abi is dual licensed under the MIT license and
+    # the UIUC License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
     maintainers = llvm_meta.maintainers ++ [ lib.maintainers.vlstill ];
   };
 }
diff --git a/pkgs/development/compilers/llvm/15/openmp/default.nix b/pkgs/development/compilers/llvm/15/openmp/default.nix
index 8047cb1122de..d51335436ad2 100644
--- a/pkgs/development/compilers/llvm/15/openmp/default.nix
+++ b/pkgs/development/compilers/llvm/15/openmp/default.nix
@@ -67,5 +67,8 @@ stdenv.mkDerivation rec {
       "clang -fopenmp" must be linked before it can run and the library that
       supports offload to target devices.
     '';
+    # "All of the code is dual licensed under the MIT license and the UIUC
+    # License (a BSD-like license)":
+    license = with lib.licenses; [ mit ncsa ];
   };
 }