diff mbox series

[v2] contributor-guide/recipe-style-guide.rst: explain difference between layer and recipe license(s)

Message ID 20260109-layer-license-clarification-v2-1-3b7f0682df97@bootlin.com
State New
Headers show
Series [v2] contributor-guide/recipe-style-guide.rst: explain difference between layer and recipe license(s) | expand

Commit Message

Antonin Godard Jan. 9, 2026, 9:32 a.m. UTC
Explain that the LICENSE set in a recipe does not apply to the recipe
file itself, but to the underlying software. The license of the recipe
file is the license provided in the layer itself. Give OpenEmbedded-Core
as an example for this.

Fixes [YOCTO #14410]

Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
---
Changes in v2:
- Apply suggestion from Paul, thanks!
- Link to v1: https://patch.msgid.link/20260106-layer-license-clarification-v1-1-99c69ec1a878@bootlin.com
---
 documentation/contributor-guide/recipe-style-guide.rst | 14 ++++++++++++++
 1 file changed, 14 insertions(+)


---
base-commit: f9042e1da554017fe46460c1fd2bdf8c74b3fa18
change-id: 20260106-layer-license-clarification-70bd02361f76
diff mbox series

Patch

diff --git a/documentation/contributor-guide/recipe-style-guide.rst b/documentation/contributor-guide/recipe-style-guide.rst
index 806bf2384..464895212 100644
--- a/documentation/contributor-guide/recipe-style-guide.rst
+++ b/documentation/contributor-guide/recipe-style-guide.rst
@@ -221,6 +221,20 @@  Recipes need to define both the :term:`LICENSE` and
    ``meta/files/common-licenses/`` or the :term:`SPDXLICENSEMAP` flag names
    defined in ``meta/conf/licenses.conf``.
 
+   .. note::
+
+      Setting a :term:`LICENSE` in a recipe applies to the software to be built
+      by this recipe, not to the recipe file itself. The license of recipes,
+      configuration files and scripts should also be clearly specified, for
+      example via comments or via a license found in the :term:`layer` that
+      holds these files. These license files are usually found at the root of
+      the layer. Exceptions should be clearly stated in the layer README or
+      LICENSE file.
+
+      For example, the :term:`OpenEmbedded-Core (OE-Core)` layer provides both
+      the GPL-2.0-only and MIT license files, and a "LICENSE" file to explain
+      how these two licenses are attributed to files found in the layer.
+
 -  :term:`LIC_FILES_CHKSUM`: The OpenEmbedded build system uses this
    variable to make sure the license text has not changed. If it has,
    the build produces an error and it affords you the chance to figure