diff options
| -rw-r--r-- | documentation/ref-manual/ref-images.rst | 17 | ||||
| -rw-r--r-- | documentation/ref-manual/ref-variables.rst | 11 |
2 files changed, 19 insertions, 9 deletions
diff --git a/documentation/ref-manual/ref-images.rst b/documentation/ref-manual/ref-images.rst index 56ec8562f8..70feadf1ff 100644 --- a/documentation/ref-manual/ref-images.rst +++ b/documentation/ref-manual/ref-images.rst | |||
| @@ -14,16 +14,17 @@ image you want. | |||
| 14 | Building an image without GNU General Public License Version 3 | 14 | Building an image without GNU General Public License Version 3 |
| 15 | (GPLv3), GNU Lesser General Public License Version 3 (LGPLv3), and | 15 | (GPLv3), GNU Lesser General Public License Version 3 (LGPLv3), and |
| 16 | the GNU Affero General Public License Version 3 (AGPL-3.0) components | 16 | the GNU Affero General Public License Version 3 (AGPL-3.0) components |
| 17 | is only supported for minimal and base images. Furthermore, if you | 17 | is only tested for core-image-minimal image. Furthermore, if you would like to |
| 18 | are going to build an image using non-GPLv3 and similarly licensed | 18 | build an image and verify that it does not include GPLv3 and similarly licensed |
| 19 | components, you must make the following changes in the ``local.conf`` | 19 | components, you must make the following changes in the image recipe |
| 20 | file before using the BitBake command to build the minimal or base | 20 | file before using the BitBake command to build the image: |
| 21 | image: | ||
| 22 | :: | ||
| 23 | 21 | ||
| 24 | 1. Comment out the EXTRA_IMAGE_FEATURES line | 22 | INCOMPATIBLE_LICENSE = "GPL-3.0* LGPL-3.0*" |
| 25 | 2. Set INCOMPATIBLE_LICENSE = "GPL-3.0 LGPL-3.0 AGPL-3.0" | ||
| 26 | 23 | ||
| 24 | Alternatively, you can adjust ``local.conf`` file, repeating and adjusting the line | ||
| 25 | for all images where the license restriction must apply: | ||
| 26 | |||
| 27 | INCOMPATIBLE_LICENSE_pn-your-image-name = "GPL-3.0* LGPL-3.0*" | ||
| 27 | 28 | ||
| 28 | From within the ``poky`` Git repository, you can use the following | 29 | From within the ``poky`` Git repository, you can use the following |
| 29 | command to display the list of directories within the :term:`Source Directory` | 30 | command to display the list of directories within the :term:`Source Directory` |
diff --git a/documentation/ref-manual/ref-variables.rst b/documentation/ref-manual/ref-variables.rst index f582bc72ea..227c81fc39 100644 --- a/documentation/ref-manual/ref-variables.rst +++ b/documentation/ref-manual/ref-variables.rst | |||
| @@ -3337,9 +3337,18 @@ system and gives an overview of their function and contents. | |||
| 3337 | :term:`INCOMPATIBLE_LICENSE` | 3337 | :term:`INCOMPATIBLE_LICENSE` |
| 3338 | Specifies a space-separated list of license names (as they would | 3338 | Specifies a space-separated list of license names (as they would |
| 3339 | appear in :term:`LICENSE`) that should be excluded | 3339 | appear in :term:`LICENSE`) that should be excluded |
| 3340 | from the build. Recipes that provide no alternatives to listed | 3340 | from the build (if set globally), or from an image (if set locally |
| 3341 | in an image recipe). | ||
| 3342 | |||
| 3343 | When the variable is set globally, recipes that provide no alternatives to listed | ||
| 3341 | incompatible licenses are not built. Packages that are individually | 3344 | incompatible licenses are not built. Packages that are individually |
| 3342 | licensed with the specified incompatible licenses will be deleted. | 3345 | licensed with the specified incompatible licenses will be deleted. |
| 3346 | Most of the time this does not allow a feasible build (because it becomes impossible | ||
| 3347 | to satisfy build time dependencies), so the recommended way to | ||
| 3348 | implement license restrictions is to set the variable in specific | ||
| 3349 | image recipes where the restrictions must apply. That way there | ||
| 3350 | are no build time restrictions, but the license check is still | ||
| 3351 | performed when the image's filesystem is assembled from packages. | ||
| 3343 | 3352 | ||
| 3344 | .. note:: | 3353 | .. note:: |
| 3345 | 3354 | ||
