#3053 new enhancement

Change RTEMS License to Two Paragraph BSD

Reported by: Joel Sherrill Owned by:
Priority: high Milestone: Indefinite
Component: unspecified Version: 5
Severity: normal Keywords: license, BSD
Cc: Blocked By:


RTEMS has long used the GPL v2 with an exception that eliminated the viral nature of the license. There has been discussion amongst the core developers and primary submitters about switching to the "Two Paragraph BSD" license. The consensus was that it was time to change. One reason was that the RTEMS license was modeled on a license no longer used by GCC language run-times. Another was that the "Two Paragraph BSD" license is easier to explain and understand. But the major reason was that the RTEMS Project has never imposed any license conformance burden on end user projects. The BSD license family is much clearer about that intent.

An announcement was made at the December 2015 Flight Software Workshop (http://flightsoftware.jhuapl.edu/files/_site/workshops/2015/). The slides and video are available for that presentation. No specific date was given but the core developer consensus was that we needed to focus on the 4.11 branch and, subsequently, the 4.12 release branches being made. With the 4.12 branch imminent, it is now time to ensure there is a ticket to track this effort and work through the relicensing as quickly and accurately as possible.

The relicensing effort will involve multiple activities:

  • update web content to include and recommend Two Paragraph BSD license
  • update coding conventions to recommend Two Paragraph BSD license
  • identify contributors for each file
    • some work has been done on this
  • obtain permission from contributors to relicense
  • update files with new license
  • generate reports on licenses associated with a particular build of RTEMS

The content on relicensing from the Flight Software Workshop presentation is captured here.

Original rationale for GPL v2 + exception

  • felt needed to establish a community
  • “stick” to encourage submissions
  • license was used by GCC language run-times

Rationale to switch

  • RTEMS has a strong community
  • users understand business value of submitting
  • we have explained the “carrot”
  • GPL v3 has soured some on GPL in general

Mechanics of Switching

  • Permission from each submitter must be obtained
    • permission obtained from top contributors
  • All contributors to a file must give permission before that file can be relicensed
  • Web form with confirmation email to grant permission to relicense
  • Effort will be made to locate the “missing”

When Permission is Not Obtained

  • Some files may never be relicensed
  • If users fund, replacement may be written
  • Older BSPs and ports may be obsoleted and removed on technical grounds
    • These are the most likely to contain files to have contributors that are hard to find

Generation of License Report

  • We are considering marking files with Linux Foundation sponsored https://SPDX.org annotation
  • Standard annotation for open source licenses _ Examples: NASA-1.3, GPL-2.0
  • Can annotate exceptions like current RTEMS license
    • Example: GPL-2.0-with-linking-exception
  • Tools exist to generate overall license reports
    • RTEMS would have to integrate one with build system

Attachments (1)

OAR-RelicenseToBSD-d2.pdf (35.6 KB) - added by Joel Sherrill on Aug 7, 2018 at 9:11:13 PM.
OAR Corporation letter granting permission to relicense

Download all attachments as: .zip

Change History (12)

comment:1 Changed on Aug 14, 2017 at 12:55:55 AM by Chris Johns


Please review and update the milestone. Thanks.

comment:2 Changed on Oct 11, 2017 at 11:09:19 PM by Joel Sherrill

Milestone: 4.12.0Indefinite

Changed on Aug 7, 2018 at 9:11:13 PM by Joel Sherrill

Attachment: OAR-RelicenseToBSD-d2.pdf added

OAR Corporation letter granting permission to relicense

comment:3 Changed on Aug 7, 2018 at 9:14:51 PM by Joel Sherrill

A signed PDF from On-Line Applications Corporation (OAR) is attached to this ticket which grants the RTEMS Community permission to relicense current and future contributions. The text of the letter is as follows:

On-Line Applications Research Corporation (OAR) grants permission to the RTEMS Foundation to relicense its current and future contributions from our current license GPLv2 plus exception to the RTEMS license becoming the 2-Clause BSD License (https://opensource.org/licenses/BSD-2-Clause). OAR shall work with the RTEMS Foundation to facilitate this change in the license as soon as possible.

comment:4 Changed on Nov 27, 2018 at 5:50:37 AM by thomas.doerfler

embedded brains has signed and sent a letter granting relicensing.
Included are also letters from the individual developers:

  • Sebastian Huber
  • Christian Mauderer
  • Alexander Krutwig
  • Ralf Kirchner
  • Peter Rasmussen
  • Thomas Doerfler.

comment:5 Changed on Nov 27, 2018 at 7:09:10 AM by Sebastian Huber <sebastian.huber@…>

In c1864a0a/rtems:

Add LICENSE.BSD-2-Clause

Copied from:


The formatting is suitable for C/C++ source comments.

Update #3053.

comment:6 Changed on Dec 2, 2018 at 4:19:29 PM by Hesham Almatary

Hesham Almatary has signed and sent the relicence letter

comment:7 Changed on Dec 3, 2018 at 1:55:16 PM by Jiri Gaisler

I grant permission to the RTEMS Foundation to relicense my current and future contributions from the current license GPLv2 plus exception to the RTEMS license becoming the 2-Clause BSD License.

Jiri Gaisler.

comment:8 Changed on Dec 11, 2018 at 6:00:39 AM by Sebastian Huber <sebastian.huber@…>

In 6179767/rtems:

Remove white space at end of line

Update #3053.

comment:9 Changed on Dec 18, 2018 at 6:30:04 PM by Gedare

I sent in a letter to grant permission for re-licensing.

comment:10 Changed on Dec 19, 2018 at 12:31:56 PM by Sebastian Huber <sebastian.huber@…>

In cde5e8d/rtems:

LICENSE.BSD-2-Clause: Clarify copyright format

Update #3053.

comment:11 Changed on Dec 19, 2018 at 12:32:00 PM by Sebastian Huber <sebastian.huber@…>

In 6164fd8/rtems:

Move COPYING file to LICENSE.GPL-2.0

Use the latest plain text formatting of the GPL-2.0 as published by the


The current RTEMS license refers to the GPL-2.0, so the source
distribution should ship a copy of the license.

Update #3053.

Note: See TracTickets for help on using tickets.