From e9abb13d58b5fd1d22da81d0e1afa28b6df42436 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Thu, 23 Feb 2023 20:52:35 +0000 Subject: [PATCH] Revert "llvmPackages_15: update licenses" This reverts commit 386aba3115176b11eb49a0606e9dd17506273776. As I understand it from reading , 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. --- pkgs/development/compilers/llvm/15/compiler-rt/default.nix | 3 +++ pkgs/development/compilers/llvm/15/default.nix | 2 +- pkgs/development/compilers/llvm/15/libcxx/default.nix | 3 +++ pkgs/development/compilers/llvm/15/libcxxabi/default.nix | 3 +++ pkgs/development/compilers/llvm/15/openmp/default.nix | 3 +++ 5 files changed, 13 insertions(+), 1 deletion(-) diff --git a/pkgs/development/compilers/llvm/15/compiler-rt/default.nix b/pkgs/development/compilers/llvm/15/compiler-rt/default.nix index 3c335345f623f..6f20d23b32bc1 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 526e79992b886..0cef33ea61cc9 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 7762df29386ef..94374c8a312df 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 fd99f4553c0cc..cb5fa44f07009 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 8047cb1122dee..d51335436ad23 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 ]; }; }