LLVM has been relicensed to ASL 2.0 with exceptions, so License: NCSA is no longer correct. There is a discussion here about the appropriate tag: <https://lists.fedoraproject.org/archives/list/legal@lists.fedoraproject.org/message/4OT2CHT3UX7AYI7LDK4YFZEU3QIDZKPY/> I think relicensings like this should also be announced on the devel list.
There is an ongoing effort to relicense LLVM (and related projects) under the Apache 2.0 with LLVM Exception license (see https://llvm.org/foundation/relicensing), however that process will still take a long time to be completed. The assessment that LLVM has been relicensed already is incorrect. What has happened is that the LLVM contribution policy has changed a while ago to require any new contributions to be under both NCSA as well as Apache 2.0 with LLVM Exception (see https://llvm.org/docs/DeveloperPolicy.html#id32). This means that the entirety of LLVM is still under the NCSA license (details here: https://llvm.org/docs/DeveloperPolicy.html#id34) and as such the current license description in the spec file is still accurate. Since the completion of the relicensing is still far out in the future I'll go ahead and close this bug. Please let me know if you have any questions.
(In reply to Tilmann Scheller from comment #1) > There is an ongoing effort to relicense LLVM (and related projects) under > the Apache 2.0 with LLVM Exception license (see > https://llvm.org/foundation/relicensing), however that process will still > take a long time to be completed. The assessment that LLVM has been > relicensed already is incorrect. What has happened is that the LLVM > contribution policy has changed a while ago to require any new contributions > to be under both NCSA as well as Apache 2.0 with LLVM Exception (see > https://llvm.org/docs/DeveloperPolicy.html#id32). This means that the > entirety of LLVM is still under the NCSA license (details here: > https://llvm.org/docs/DeveloperPolicy.html#id34) and as such the current > license description in the spec file is still accurate. Since the completion > of the relicensing is still far out in the future I'll go ahead and close > this bug. Please let me know if you have any questions. The source tree is full of files that specify something like this: // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception Examples are tools/llvm-nm/llvm-nm.cpp, include/llvm/Analysis/ScalarEvolution.h, lib/Target/PowerPC/PPCScheduleG4Plus.td. <https://llvm.org/LICENSE.txt> no longer mentions the NCSA license. To an outsider, it does look like the relicensing has concluded.
There has been a discussion about it on the llvm-dev mailing list recently (http://lists.llvm.org/pipermail/llvm-foundation/2020-July/000214.html) with a confirmation that relicensing is still on-going.
Florian, I agree that the licensing headers in sources files are somewhat misleading in that regard. If you look at the LICENSE.TXT in the project repository you'll still see both licenses mentioned: https://github.com/llvm/llvm-project/blob/master/llvm/LICENSE.TXT And yeah, the email thread mentioned by Serge provides accurate status in terms of the ongoing relicensing.
If portions are old, and portions are new, should not the License tag reflect that, and say 'ASL 2.0 and NCSA'?
(In reply to Elliott Sales de Andrade from comment #5) > If portions are old, and portions are new, should not the License tag > reflect that, and say 'ASL 2.0 and NCSA'? I think the idea is that while the project has the ability to license new contributions under ASL 2.0, the releases being made are exclusively NCSA. It does not matter that the source code gives a different impression.
It's not just the source code, which does have headers saying: > // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. But also the Developer guide (https://llvm.org/docs/DeveloperPolicy.html#copyright-license-and-patents), which says: > The code is licensed under permissive open source licensing terms, namely the Apache-2.0 with LLVM-exception license, which includes a copyright and patent license. When you contribute code to the LLVM project, you license it under these terms. And the FAQ (https://llvm.org/docs/FAQ.html#can-i-modify-llvm-source-code-and-redistribute-the-modified-source): > The modified source distribution must retain the copyright notice and follow the conditions listed in the Apache License v2.0 with LLVM Exceptions. And the docs have said this since at least LLVM 10. It is quite buried somewhat inconspicuously in the Relicensing section (https://llvm.org/docs/DeveloperPolicy.html#relicensing) that: > In the interim, all contributions to the project will be made under the terms of both the new license and the legacy license scheme. They don't have a CLA to re-license later, thus any authors of new code have dual-licensed their contributions. I don't see anything saying they are still *only* NCSA, only that they are not NCSA-free.
(In reply to Elliott Sales de Andrade from comment #7) > > They don't have a CLA to re-license later, thus any authors of new code have > dual-licensed their contributions. I don't see anything saying they are > still *only* NCSA, only that they are not NCSA-free. This is correct. There is still some code that is licensed as NCSA only, but new code is dual-licensed with NCSA and Apache License v2.0 with LLVM Exceptions.