Skip to content

Commit c6f4fe2

Browse files
author
Amanda Butler
authored
Merge pull request #1065 from ARMmbed/license-review
Review edits to license.md
2 parents 450bbbe + 3f2d1b4 commit c6f4fe2

File tree

1 file changed

+26
-27
lines changed

1 file changed

+26
-27
lines changed

docs/reference/contributing/guidelines/license.md

Lines changed: 26 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
This chapter covers the different aspects of developing your own libraries for use in Arm Mbed devices, as well as items to keep in mind during development, such as licensing. It covers:
44
- [Creating and licensing](#licensing-binaries-and-libraries): Create and license your own binaries and libraries.
5-
- [The Arm Mbed OS codebase](#contributing-to-the-mbed-os-code-base): Use GitHub to contribute additions and bug fixes to Mbed OS itself.
5+
- [The Arm Mbed OS codebase](#contributing-to-the-mbed-os-codebase): Use GitHub to contribute additions and bug fixes to Mbed OS itself.
66

77
## Licensing binaries and libraries
88

@@ -12,23 +12,23 @@ If you create new software, such as drivers, libraries and examples, you can app
1212

1313
- For original source code, use the Apache 2.0 license.  
1414

15-
- For binary releases (for example, private source code you can’t or don’t want to release but want to share as a binary library and headers available for others to use), consider the [Permissive Binary License](https://www.mbed.com/licenses/PBL-1.0). This is designed to be compatible with Apache 2.0 and the Mbed OS codebase.
15+
- For binary releases (for example, private source code you can’t or don’t want to release but want to share as a binary library and headers available for others to use), consider the [Permissive Binary License (PBL)](https://www.mbed.com/licenses/PBL-1.0). This is designed to be compatible with Apache 2.0 and the Mbed OS codebase.
1616

17-
- If your software incorporates or is derived from other third party open source code, please be sure to retain all notices and identify the license for the third party licensed code in the same manner as described below. Remember, you cannot change the license on someone else’s code, because you are not the copyright holder! Instead, choose a license that is compatible with the license used by the third party open source code, or use the same license as that code. For example, if your software is derived from GPL source code, GPL requires you to license the rest of your code in that software under the GPL too. Note that many commercial users won’t be able to use GPL source code in their products, so we don't recommend this license if you're not obligated to use it.
17+
- If your software incorporates or is derived from other third party open source code, please be sure to retain all notices and identify the license for the third party licensed code in the same manner as described below. You cannot change the license on someone else’s code, because you are not the copyright holder. Instead, choose a license that is compatible with the license used by the third party open source code, or use the same license as that code. For example, if your software is derived from GNU General Public License (GPL) source code, GPL requires you to license the rest of your code in that software under the GPL too. Many commercial users cannot use GPL source code in their products, so we don't recommend this license if you're not obligated to use it.
1818

1919
You must either write all the code you provide yourself, or have the necessary rights to provide code written by someone else.
2020

2121
In all cases, whatever license you use, please use an [SPDX license identifier](http://spdx.org/licenses/) in every source file following the [recommendations](https://spdx.org/spdx-specification-21-web-version#h.twlc0ztnng3b) to make it easier for users to understand and review licenses.
2222

2323
## When to use Apache 2.0
2424

25-
Apache 2.0 is a permissive, free and open source software license that allows other parties to use, modify and redistribute the code in source and binary form. Compared to the often used BSD license, Apache 2.0 provides an express patent grant from contributors to users.
25+
Apache 2.0 is a permissive, free and open source software license that allows other parties to use, modify and redistribute the code in source and binary form. Compared to the often used Berkeley Software Distribution (BSD) license, Apache 2.0 provides an express patent grant from contributors to users.
2626

27-
The full text of the license can be found on the [Apache website](http://www.apache.org/licenses/LICENSE-2.0). For more information about Apache 2.0, see [the FAQ](http://www.apache.org/foundation/license-faq.html).
27+
The full text of the license is on the [Apache website](http://www.apache.org/licenses/LICENSE-2.0). For more information about Apache 2.0, see [the FAQ](http://www.apache.org/foundation/license-faq.html).
2828

2929
## How to apply Apache 2.0 correctly
3030

31-
In order to clearly reflect the Apache 2.0 license, please create two text files:
31+
To clearly reflect the Apache 2.0 license, please create two text files:
3232

3333
- A *LICENSE.md* file with the following text:
3434

@@ -57,40 +57,39 @@ In order to clearly reflect the Apache 2.0 license, please create two text files
5757
See the License for the specific language governing permissions and limitations under the License.
5858
```
5959

60-
## When to use the Permissive Binary License
60+
## When to use PBL
6161

62-
The Permissive Binary License (PBL) is a permissive license based on BSD-3-Clause and designed specifically for binary blobs. It's minimal but covers the basics, including an express patent grant.
62+
PBL is a permissive license based on BSD-3-Clause and designed specifically for binary blobs. It is minimal but covers the basics, including an express patent grant.
6363

64-
It allows you to share a binary blob and the relevant headers, and allows others to use that binary blob as part of their product - as long as they provide it with all the relevant dependencies and don't modify it or reverse engineer it.
64+
It allows you to share a binary blob and the relevant headers, and allows others to use that binary blob as part of their product - as long as they provide it with all the relevant dependencies and don't modify or reverse engineer it.
6565

66-
The full text can be found on [mbed.com](https://www.mbed.com/licenses/PBL-1.0).
66+
The full text is at [mbed.com](https://www.mbed.com/licenses/PBL-1.0).
6767

6868
## How to apply PBL correctly
6969

70-
In order to clearly reflect the PBL license, please create three text files:
70+
To clearly reflect the PBL license, please create the following three text files:
7171

7272
- A *LICENSE.md* file with:
7373

74-
<pre>Unless specifically indicated otherwise in a file, files are licensed under the Permissive Binary License,
75-
as can be found in: LICENSE-permissive-binary-license-1.0.txt</pre>
74+
```
75+
Unless specifically indicated otherwise in a file, files are licensed under the Permissive Binary License, as can be found in LICENSE-permissive-binary-license-1.0.txt
76+
```
7677
7778
- The full original [Permissive Binary License 1.0 text](https://www.mbed.com/licenses/PBL-1.0) in *LICENSE-permissive-binary-license-1.0.txt*.
7879
7980
- A *DEPENDENCIES* file with the dependencies that this binary requires to work properly. This is to make sure that third parties integrating the binary in their own distribution are aware that they need to include the relevant dependencies. If your binary does not have any dependencies, the file should state so (that is, say “No dependencies”); don't omit this file.
8081
81-
Each source header should *start with* your copyright line, the SPDX identifier and the PBL header:
82+
Each source header should *start with* the copyright line, SPDX identifier and PBL header:
8283
83-
```
84-
Copyright (c) [First year]-[Last year], **Your Name Here**, All Rights Reserved
85-
SPDX-License-Identifier: LicenseRef-PBL
84+
```
85+
Copyright (c) [First year]-[Last year], **Your Name Here**, All Rights Reserved SPDX-License-Identifier: LicenseRef-PBL
86+
87+
This file and the related binary are licensed under the Permissive Binary License, Version 1.0 (the "License"); you may not use these files except in compliance with the License.
8688
87-
This file and the related binary are licensed under the Permissive Binary License, Version 1.0 (the "License"); you may not use these files except in compliance with the License.
89+
You may obtain a copy of the License here: LICENSE-permissive-binary-license-1.0.txt and at https://www.mbed.com/licenses/PBL-1.0
8890
89-
You may obtain a copy of the License here: LICENSE-permissive-binary-license-1.0.txt and at
90-
https://www.mbed.com/licenses/PBL-1.0
91-
92-
See the License for the specific language governing permissions and limitations under the License.
93-
```
91+
See the License for the specific language governing permissions and limitations under the License.
92+
```
9493
9594
## Using a different license
9695
@@ -102,14 +101,14 @@ If you decide to use a different license for your work, follow the same pattern:
102101
103102
- Begin each source header with your copyright line, the SPDX identifier and the standard header for the license that applies to that single file, if it has one. (See [SPDX Specification, Appendix V](https://spdx.org/spdx-specification-21-web-version#h.twlc0ztnng3b).)
104103
105-
- If more than one license applies to the source file, then use an SPDX license expression (see [SPDX Specification, Appendix IV](https://spdx.org/spdx-specification-21-web-version#h.jxpfx0ykyb60)), to reflect the presence of multiple licenses in your *LICENSE.md* file and in each source file.
104+
- If more than one license applies to the source file, use an SPDX license expression (see [SPDX Specification, Appendix IV](https://spdx.org/spdx-specification-21-web-version#h.jxpfx0ykyb60)), to reflect the presence of multiple licenses in your *LICENSE.md* file and in each source file.
106105
107106
## Contributing to the Mbed OS codebase
108107
109108
### Mbed OS principles
110109
111-
By creating a pull request on GitHub against Mbed OS, you are agreeing to license your contributions under the same license as the original code. Note that Mbed software is released under a permissive license for all new Mbed contributions. Arm will not accept proprietary code or any code under a "copyleft" license. Accepting such code would prevent us from continuing to distribute our code under the permissive license and stall adoption of our code by third parties.
110+
By creating a pull request on GitHub against Mbed OS, you agree to license your contributions under the same license as the original code. Mbed software is released under a permissive license for all new Mbed contributions. Arm will not accept proprietary code or any code under a "copyleft" license. Accepting such code would prevent us from distributing our code under the permissive license and stall adoption of our code by third parties.
112111
113-
Mbed OS uses these same basic principles for its source code and library distributions. Source code we own is distributed under the Apache 2.0 license, and binary blobs are released under the Permissive Binary License. Software parts from third parties that were already licensed under a different license are available under that original license.
112+
Mbed OS uses these same basic principles for its source code and library distributions. Source code we own is distributed under the Apache 2.0 license, and binary blobs are released under the Permissive Binary License. Software parts from third parties that were already licensed under a different license are available under the original license.
114113
115-
All the source code and binary blobs in Mbed OS are maintained in public GitHub repositories.
114+
All source code and binary blobs in Mbed OS are maintained in public GitHub repositories.

0 commit comments

Comments
 (0)