diff --git a/LICENSES/exceptions/GCC-exception-3.1.txt b/LICENSES/exceptions/GCC-exception-3.1.txt new file mode 100644 index 0000000000..3003316919 --- /dev/null +++ b/LICENSES/exceptions/GCC-exception-3.1.txt @@ -0,0 +1,74 @@ +GCC RUNTIME LIBRARY EXCEPTION + +Version 3.1, 31 March 2009 + +General information: http://www.gnu.org/licenses/gcc-exception.html + +Copyright (C) 2009 Free Software Foundation, Inc. + +Everyone is permitted to copy and distribute verbatim copies of this +license document, but changing it is not allowed. + +This GCC Runtime Library Exception ("Exception") is an additional +permission under section 7 of the GNU General Public License, version 3 +("GPLv3"). It applies to a given file (the "Runtime Library") that bears +a notice placed by the copyright holder of the file stating that the +file is governed by GPLv3 along with this Exception. + +When you use GCC to compile a program, GCC may combine portions of +certain GCC header files and runtime libraries with the compiled +program. The purpose of this Exception is to allow compilation of +non-GPL (including proprietary) programs to use, in this way, the header +files and runtime libraries covered by this Exception. + +0. Definitions. + + A file is an "Independent Module" if it either requires the Runtime + Library for execution after a Compilation Process, or makes use of an + interface provided by the Runtime Library, but is not otherwise based + on the Runtime Library. + + "GCC" means a version of the GNU Compiler Collection, with or without + modifications, governed by version 3 (or a specified later version) of + the GNU General Public License (GPL) with the option of using any + subsequent versions published by the FSF. + + "GPL-compatible Software" is software whose conditions of propagation, + modification and use would permit combination with GCC in accord with + the license of GCC. + + "Target Code" refers to output from any compiler for a real or virtual + target processor architecture, in executable form or suitable for + input to an assembler, loader, linker and/or execution phase. + Notwithstanding that, Target Code does not include data in any format + that is used as a compiler intermediate representation, or used for + producing a compiler intermediate representation. + + The "Compilation Process" transforms code entirely represented in + non-intermediate languages designed for human-written code, and/or in + Java Virtual Machine byte code, into Target Code. Thus, for example, + use of source code generators and preprocessors need not be considered + part of the Compilation Process, since the Compilation Process can be + understood as starting with the output of the generators or + preprocessors. + + A Compilation Process is "Eligible" if it is done using GCC, alone or + with other GPL-compatible software, or if it is done without using any + work based on GCC. For example, using non-GPL-compatible Software to + optimize any GCC intermediate representations would not qualify as an + Eligible Compilation Process. + +1. Grant of Additional Permission. + + You have permission to propagate a work of Target Code formed by + combining the Runtime Library with Independent Modules, even if such + propagation would otherwise violate the terms of GPLv3, provided that + all Target Code was generated by Eligible Compilation Processes. You + may then convey such a combination under terms of your choice, + consistent with the licensing of the Independent Modules. + +2. No Weakening of GCC Copyleft. + + The availability of this Exception does not imply any general + presumption that third-party software is unaffected by the copyleft + requirements of the license of GCC. diff --git a/util/lint/lint-000-license-headers b/util/lint/lint-000-license-headers index 2f65321a6f..ac0b82f438 100755 --- a/util/lint/lint-000-license-headers +++ b/util/lint/lint-000-license-headers @@ -101,6 +101,7 @@ check_for_license 'SPDX-License-Identifier: GPL-2.0-only' check_for_license 'SPDX-License-Identifier: GPL-2.0-or-later' check_for_license 'SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note' check_for_license 'SPDX-License-Identifier: GPL-3.0-only' +check_for_license 'SPDX-License-Identifier: GPL-3.0-only WITH GCC-exception-3.1' check_for_license 'SPDX-License-Identifier: GPL-3.0-or-later' check_for_license 'SPDX-License-Identifier: HPND' check_for_license 'SPDX-License-Identifier: HPND-sell-variant'