Commit f9afd573 authored by Alyssa Ross's avatar Alyssa Ross
Browse files

Revert "llvmPackages_15: update licenses"

This reverts commit 386aba31.

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.
parent 2d415deb
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -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 ];
  };
}
+1 −1
Original line number Diff line number Diff line
@@ -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;
  };
+3 −0
Original line number Diff line number Diff line
@@ -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 ];
  };
}
+3 −0
Original line number Diff line number Diff line
@@ -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 ];
  };
}
+3 −0
Original line number Diff line number Diff line
@@ -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 ];
  };
}