Skip to content
  • Hemant Agrawal's avatar
    license: introduce SPDX identifiers · a4862c9e
    Hemant Agrawal authored
    The DPDK uses the Open Source BSD-3-Clause license for the core libraries
    and drivers. The kernel components are naturally GPLv2 licensed.
    
    Many of the files in the DPDK source code contain the full text of the
    applicable license. For example, most of the BSD-3-Clause files contain a
    full copy of the BSD-3-Clause license text.
    
    Including big blocks of License headers in all files blows up the source
    code with mostly redundant information.  An additional problem is that even
    the same licenses are referred to by a number of slightly varying text
    blocks (full, abbreviated, different indentation, line wrapping and/or
    white space, with obsolete address information, ...) which makes validation
    and automatic processing a nightmare.
    
    To make this easier, DPDK uses of a single line reference to
    Unique License Identifiers in source files as defined by the Linux
    Foundation's SPDX project https://spdk.org.
    
    Adding license information in this fashion, rather than adding full license
    text, can be more efficient for developers; decreases errors; and improves
    automated detection of licenses. The current set of valid, predefined SPDX
    identifiers is set forth on the SPDX License List at
    https://spdx.org/licenses/
    
    .
    
    For example, to label a file as subject to the BSD-3-Clause license,
    the following text would be used as the top line of the file.
    
    SPDX-License-Identifier: BSD-3-Clause
    
    Note: Any new file contributions in DPDK shall adhere to the above scheme.
    It is also recommended to replace or at least amend the existing license
    text in the code with SPDX-License-Identifiers.
    
    Any exception to DPDK IP policies shall be approved by DPDK tech board and
    DPDK Governing Board. Steps for any exception approval:
    1. Mention the appropriate license identifier form SPDX. If the license is
       not listed in SPDX Licenses. It is the submitters responsibiliity to get
       it first listed.
    2. Get the required approval from the DPDK Technical Board. Technical board
       may advise the author to check alternate means first. If no other
       alternatives are found and the merit of the contributions are important
       for DPDK's mission, it may decide on such exception with two-thirds vote
       of the members.
    3. Technical board then approach Governing board for such limited approval
       for the given contribution only.
    
    Any approvals shall be documented in "licenses/exceptions.txt" with record
    dates.
    
    Note: From the legal point of view, this patch is supposed to be only a
    change to the textual representation of the license information, but in no
    way any change to the actual license terms. With this patch applied, all
    files will still be licensed under the same terms they were before.
    
    Signed-off-by: default avatarHemant Agrawal <hemant.agrawal@nxp.com>
    Acked-by: default avatarStephen Hemminger <stephen@networkplumber.org>
    Acked-by: default avatarThomas Monjalon <thomas@monjalon.net>
    a4862c9e