diff options
Diffstat (limited to 'documentation')
54 files changed, 930 insertions, 1036 deletions
diff --git a/documentation/bsp-guide/bsp.rst b/documentation/bsp-guide/bsp.rst index 23c70b5a30..fccf059ccc 100644 --- a/documentation/bsp-guide/bsp.rst +++ b/documentation/bsp-guide/bsp.rst | |||
@@ -1365,7 +1365,7 @@ Project Reference Manual. | |||
1365 | 1365 | ||
1366 | - :term:`IMAGE_INSTALL`: | 1366 | - :term:`IMAGE_INSTALL`: |
1367 | Specifies packages to install into an image through the | 1367 | Specifies packages to install into an image through the |
1368 | :ref:`image <ref-classes-image>` class. Recipes | 1368 | :ref:`ref-classes-image` class. Recipes |
1369 | use the :term:`IMAGE_INSTALL` variable. | 1369 | use the :term:`IMAGE_INSTALL` variable. |
1370 | 1370 | ||
1371 | - ``do_image_wic[depends]``: A task that is constructed during the | 1371 | - ``do_image_wic[depends]``: A task that is constructed during the |
diff --git a/documentation/dev-manual/build-quality.rst b/documentation/dev-manual/build-quality.rst index 03eee12bef..713ea3a48e 100644 --- a/documentation/dev-manual/build-quality.rst +++ b/documentation/dev-manual/build-quality.rst | |||
@@ -14,13 +14,11 @@ has already been built when the software is building, the software will | |||
14 | link to the built library and that library will be pulled into your | 14 | link to the built library and that library will be pulled into your |
15 | image along with the new software even if you did not want the library. | 15 | image along with the new software even if you did not want the library. |
16 | 16 | ||
17 | The :ref:`buildhistory <ref-classes-buildhistory>` | 17 | The :ref:`ref-classes-buildhistory` class helps you maintain the quality of |
18 | class helps you maintain the quality of your build output. You | 18 | your build output. You can use the class to highlight unexpected and possibly |
19 | can use the class to highlight unexpected and possibly unwanted changes | 19 | unwanted changes in the build output. When you enable build history, it records |
20 | in the build output. When you enable build history, it records | 20 | information about the contents of each package and image and then commits that |
21 | information about the contents of each package and image and then | 21 | information to a local Git repository where you can examine the information. |
22 | commits that information to a local Git repository where you can examine | ||
23 | the information. | ||
24 | 22 | ||
25 | The remainder of this section describes the following: | 23 | The remainder of this section describes the following: |
26 | 24 | ||
diff --git a/documentation/dev-manual/building.rst b/documentation/dev-manual/building.rst index 3064974cc5..1f1642e846 100644 --- a/documentation/dev-manual/building.rst +++ b/documentation/dev-manual/building.rst | |||
@@ -295,8 +295,8 @@ Follow these steps to create an :term:`Initramfs` image: | |||
295 | recipe, you should use :term:`PACKAGE_INSTALL` rather than | 295 | recipe, you should use :term:`PACKAGE_INSTALL` rather than |
296 | :term:`IMAGE_INSTALL`. :term:`PACKAGE_INSTALL` gives more direct control of | 296 | :term:`IMAGE_INSTALL`. :term:`PACKAGE_INSTALL` gives more direct control of |
297 | what is added to the image as compared to the defaults you might not | 297 | what is added to the image as compared to the defaults you might not |
298 | necessarily want that are set by the :ref:`image <ref-classes-image>` | 298 | necessarily want that are set by the :ref:`ref-classes-image` |
299 | or :ref:`core-image <ref-classes-core-image>` classes. | 299 | or :ref:`ref-classes-core-image` classes. |
300 | 300 | ||
301 | #. *Build the Kernel Image and the Initramfs Image:* Build your kernel | 301 | #. *Build the Kernel Image and the Initramfs Image:* Build your kernel |
302 | image using BitBake. Because the :term:`Initramfs` image recipe is a | 302 | image using BitBake. Because the :term:`Initramfs` image recipe is a |
@@ -683,7 +683,7 @@ your tunings to best consider build times and package feed maintenance. | |||
683 | A recipe that just generates scripts can enable "all" architecture | 683 | A recipe that just generates scripts can enable "all" architecture |
684 | because there are no binaries to build. To specifically enable "all" | 684 | because there are no binaries to build. To specifically enable "all" |
685 | architecture, be sure your recipe inherits the | 685 | architecture, be sure your recipe inherits the |
686 | :ref:`allarch <ref-classes-allarch>` class. | 686 | :ref:`ref-classes-allarch` class. |
687 | This class is useful for "all" architectures because it configures | 687 | This class is useful for "all" architectures because it configures |
688 | many variables so packages can be used across multiple architectures. | 688 | many variables so packages can be used across multiple architectures. |
689 | 689 | ||
@@ -796,7 +796,7 @@ where the development occurs. You want the recipe's | |||
796 | the external directory and use it as is, not copy it. | 796 | the external directory and use it as is, not copy it. |
797 | 797 | ||
798 | To build from software that comes from an external source, all you need to do | 798 | To build from software that comes from an external source, all you need to do |
799 | is inherit the :ref:`externalsrc <ref-classes-externalsrc>` class and then set | 799 | is inherit the :ref:`ref-classes-externalsrc` class and then set |
800 | the :term:`EXTERNALSRC` variable to point to your external source code. Here | 800 | the :term:`EXTERNALSRC` variable to point to your external source code. Here |
801 | are the statements to put in your ``local.conf`` file:: | 801 | are the statements to put in your ``local.conf`` file:: |
802 | 802 | ||
@@ -812,8 +812,7 @@ This next example shows how to accomplish the same thing by setting | |||
812 | .. note:: | 812 | .. note:: |
813 | 813 | ||
814 | In order for these settings to take effect, you must globally or | 814 | In order for these settings to take effect, you must globally or |
815 | locally inherit the :ref:`externalsrc <ref-classes-externalsrc>` | 815 | locally inherit the :ref:`ref-classes-externalsrc` class. |
816 | class. | ||
817 | 816 | ||
818 | By default, :ref:`ref-classes-externalsrc` builds the source code in a | 817 | By default, :ref:`ref-classes-externalsrc` builds the source code in a |
819 | directory separate from the external source directory as specified by | 818 | directory separate from the external source directory as specified by |
@@ -881,14 +880,14 @@ directory: | |||
881 | 880 | ||
882 | #. *Using Local Files Only:* Inside your ``local.conf`` file, add the | 881 | #. *Using Local Files Only:* Inside your ``local.conf`` file, add the |
883 | :term:`SOURCE_MIRROR_URL` variable, inherit the | 882 | :term:`SOURCE_MIRROR_URL` variable, inherit the |
884 | :ref:`own-mirrors <ref-classes-own-mirrors>` class, and use the | 883 | :ref:`ref-classes-own-mirrors` class, and use the |
885 | :term:`BB_NO_NETWORK` variable to your ``local.conf``:: | 884 | :term:`BB_NO_NETWORK` variable to your ``local.conf``:: |
886 | 885 | ||
887 | SOURCE_MIRROR_URL ?= "file:///home/your-download-dir/" | 886 | SOURCE_MIRROR_URL ?= "file:///home/your-download-dir/" |
888 | INHERIT += "own-mirrors" | 887 | INHERIT += "own-mirrors" |
889 | BB_NO_NETWORK = "1" | 888 | BB_NO_NETWORK = "1" |
890 | 889 | ||
891 | The :term:`SOURCE_MIRROR_URL` and :ref:`own-mirrors <ref-classes-own-mirrors>` | 890 | The :term:`SOURCE_MIRROR_URL` and :ref:`ref-classes-own-mirrors` |
892 | class set up the system to use the downloads directory as your "own | 891 | class set up the system to use the downloads directory as your "own |
893 | mirror". Using the :term:`BB_NO_NETWORK` variable makes sure that | 892 | mirror". Using the :term:`BB_NO_NETWORK` variable makes sure that |
894 | BitBake's fetching process in step 3 stays local, which means files | 893 | BitBake's fetching process in step 3 stays local, which means files |
diff --git a/documentation/dev-manual/debugging.rst b/documentation/dev-manual/debugging.rst index 921022475f..9fb159eae6 100644 --- a/documentation/dev-manual/debugging.rst +++ b/documentation/dev-manual/debugging.rst | |||
@@ -153,7 +153,7 @@ In addition to variable values, the output of the ``bitbake -e`` and | |||
153 | classes included globally, recursively listing the files they include | 153 | classes included globally, recursively listing the files they include |
154 | or inherit in turn. Much of the behavior of the OpenEmbedded build | 154 | or inherit in turn. Much of the behavior of the OpenEmbedded build |
155 | system (including the behavior of the :ref:`ref-manual/tasks:normal recipe build tasks`) is | 155 | system (including the behavior of the :ref:`ref-manual/tasks:normal recipe build tasks`) is |
156 | implemented in the :ref:`base <ref-classes-base>` class and the | 156 | implemented in the :ref:`ref-classes-base` class and the |
157 | classes it inherits, rather than being built into BitBake itself. | 157 | classes it inherits, rather than being built into BitBake itself. |
158 | 158 | ||
159 | - After the variable values, all functions appear in the output. For | 159 | - After the variable values, all functions appear in the output. For |
@@ -196,8 +196,7 @@ Following are a few of the available ``oe-pkgdata-util`` subcommands. | |||
196 | which contains the files stored in that package. | 196 | which contains the files stored in that package. |
197 | 197 | ||
198 | If you want to inspect the ``${WORKDIR}/packages-split`` | 198 | If you want to inspect the ``${WORKDIR}/packages-split`` |
199 | directory, make sure that | 199 | directory, make sure that :ref:`ref-classes-rm-work` is not |
200 | :ref:`rm_work <ref-classes-rm-work>` is not | ||
201 | enabled when you build the recipe. | 200 | enabled when you build the recipe. |
202 | 201 | ||
203 | - ``oe-pkgdata-util find-path path ...``: Lists the names of | 202 | - ``oe-pkgdata-util find-path path ...``: Lists the names of |
@@ -598,8 +597,7 @@ log to ``${T}/log.do_``\ `task`, and can also log to standard output | |||
598 | 597 | ||
599 | The same logging functions are also available in shell functions, under | 598 | The same logging functions are also available in shell functions, under |
600 | the names ``bbplain``, ``bbnote``, ``bbdebug``, ``bbwarn``, ``bberror``, | 599 | the names ``bbplain``, ``bbnote``, ``bbdebug``, ``bbwarn``, ``bberror``, |
601 | and ``bbfatal``. The | 600 | and ``bbfatal``. The :ref:`ref-classes-logging` class |
602 | :ref:`logging <ref-classes-logging>` class | ||
603 | implements these functions. See that class in the ``meta/classes`` | 601 | implements these functions. See that class in the ``meta/classes`` |
604 | folder of the :term:`Source Directory` for information. | 602 | folder of the :term:`Source Directory` for information. |
605 | 603 | ||
diff --git a/documentation/dev-manual/disk-space.rst b/documentation/dev-manual/disk-space.rst index 6fa48e1f4a..3a5d2b7297 100644 --- a/documentation/dev-manual/disk-space.rst +++ b/documentation/dev-manual/disk-space.rst | |||
@@ -14,8 +14,7 @@ the :term:`Build Directory`:: | |||
14 | 14 | ||
15 | Adding this statement deletes the work directory used for | 15 | Adding this statement deletes the work directory used for |
16 | building a recipe once the recipe is built. For more information on | 16 | building a recipe once the recipe is built. For more information on |
17 | "rm_work", see the | 17 | "rm_work", see the :ref:`ref-classes-rm-work` class in the |
18 | :ref:`rm_work <ref-classes-rm-work>` class in the | ||
19 | Yocto Project Reference Manual. | 18 | Yocto Project Reference Manual. |
20 | 19 | ||
21 | Purging Duplicate Shared State Cache Files | 20 | Purging Duplicate Shared State Cache Files |
diff --git a/documentation/dev-manual/error-reporting-tool.rst b/documentation/dev-manual/error-reporting-tool.rst index 6854f1046a..84f3d9cd1e 100644 --- a/documentation/dev-manual/error-reporting-tool.rst +++ b/documentation/dev-manual/error-reporting-tool.rst | |||
@@ -27,9 +27,9 @@ Enabling and Using the Tool | |||
27 | =========================== | 27 | =========================== |
28 | 28 | ||
29 | By default, the error reporting tool is disabled. You can enable it by | 29 | By default, the error reporting tool is disabled. You can enable it by |
30 | inheriting the :ref:`report-error <ref-classes-report-error>` | 30 | inheriting the :ref:`ref-classes-report-error` class by adding the |
31 | class by adding the following statement to the end of your | 31 | following statement to the end of your ``local.conf`` file in your |
32 | ``local.conf`` file in your :term:`Build Directory`:: | 32 | :term:`Build Directory`:: |
33 | 33 | ||
34 | INHERIT += "report-error" | 34 | INHERIT += "report-error" |
35 | 35 | ||
diff --git a/documentation/dev-manual/gobject-introspection.rst b/documentation/dev-manual/gobject-introspection.rst index 28e51240c3..f7206e6fae 100644 --- a/documentation/dev-manual/gobject-introspection.rst +++ b/documentation/dev-manual/gobject-introspection.rst | |||
@@ -39,9 +39,7 @@ Enabling the Generation of Introspection Data | |||
39 | Enabling the generation of introspection data (GIR files) in your | 39 | Enabling the generation of introspection data (GIR files) in your |
40 | library package involves the following: | 40 | library package involves the following: |
41 | 41 | ||
42 | #. Inherit the | 42 | #. Inherit the :ref:`ref-classes-gobject-introspection` class. |
43 | :ref:`gobject-introspection <ref-classes-gobject-introspection>` | ||
44 | class. | ||
45 | 43 | ||
46 | #. Make sure introspection is not disabled anywhere in the recipe or | 44 | #. Make sure introspection is not disabled anywhere in the recipe or |
47 | from anything the recipe includes. Also, make sure that | 45 | from anything the recipe includes. Also, make sure that |
diff --git a/documentation/dev-manual/licenses.rst b/documentation/dev-manual/licenses.rst index 0f8d759519..65914e5efe 100644 --- a/documentation/dev-manual/licenses.rst +++ b/documentation/dev-manual/licenses.rst | |||
@@ -325,13 +325,12 @@ and not just the source used in the released image. It will include | |||
325 | toolchain source, and other artifacts, which you would not generally | 325 | toolchain source, and other artifacts, which you would not generally |
326 | release. However, the more serious issue for most companies is | 326 | release. However, the more serious issue for most companies is |
327 | accidental release of proprietary software. The Yocto Project provides | 327 | accidental release of proprietary software. The Yocto Project provides |
328 | an :ref:`archiver <ref-classes-archiver>` class to | 328 | an :ref:`ref-classes-archiver` class to help avoid some of these concerns. |
329 | help avoid some of these concerns. | ||
330 | 329 | ||
331 | Before you employ :term:`DL_DIR` or the :ref:`archiver <ref-classes-archiver>` class, you need to | 330 | Before you employ :term:`DL_DIR` or the :ref:`ref-classes-archiver` class, you |
332 | decide how you choose to provide source. The source :ref:`archiver <ref-classes-archiver>` class | 331 | need to decide how you choose to provide source. The source |
333 | can generate tarballs and SRPMs and can create them with various levels | 332 | :ref:`ref-classes-archiver` class can generate tarballs and SRPMs and can |
334 | of compliance in mind. | 333 | create them with various levels of compliance in mind. |
335 | 334 | ||
336 | One way of doing this (but certainly not the only way) is to release | 335 | One way of doing this (but certainly not the only way) is to release |
337 | just the source as a tarball. You can do this by adding the following to | 336 | just the source as a tarball. You can do this by adding the following to |
@@ -417,8 +416,8 @@ generation are included on your image. | |||
417 | adds a separate package and an upgrade path for adding licenses to an | 416 | adds a separate package and an upgrade path for adding licenses to an |
418 | image. | 417 | image. |
419 | 418 | ||
420 | As the source :ref:`archiver <ref-classes-archiver>` class has already archived the original | 419 | As the source :ref:`ref-classes-archiver` class has already archived the |
421 | unmodified source that contains the license files, you would have | 420 | original unmodified source that contains the license files, you would have |
422 | already met the requirements for inclusion of the license information | 421 | already met the requirements for inclusion of the license information |
423 | with source as defined by the GPL and other open source licenses. | 422 | with source as defined by the GPL and other open source licenses. |
424 | 423 | ||
@@ -488,8 +487,8 @@ mechanisms as well as explicitly included in the image recipe with | |||
488 | :term:`IMAGE_INSTALL`, and depends on a static linked library recipe B | 487 | :term:`IMAGE_INSTALL`, and depends on a static linked library recipe B |
489 | (``DEPENDS += "B"``), package B will neither appear in the generated license | 488 | (``DEPENDS += "B"``), package B will neither appear in the generated license |
490 | manifest nor in the generated source tarballs. This occurs as the | 489 | manifest nor in the generated source tarballs. This occurs as the |
491 | :ref:`license <ref-classes-license>` and :ref:`archiver <ref-classes-archiver>` | 490 | :ref:`ref-classes-license` and :ref:`ref-classes-archiver` classes assume that |
492 | classes assume that only packages included via :term:`RDEPENDS` or :term:`RRECOMMENDS` | 491 | only packages included via :term:`RDEPENDS` or :term:`RRECOMMENDS` |
493 | end up in the image. | 492 | end up in the image. |
494 | 493 | ||
495 | As a result, potential obligations regarding license compliance for package B | 494 | As a result, potential obligations regarding license compliance for package B |
diff --git a/documentation/dev-manual/new-recipe.rst b/documentation/dev-manual/new-recipe.rst index 3adebf2746..4751f64b7e 100644 --- a/documentation/dev-manual/new-recipe.rst +++ b/documentation/dev-manual/new-recipe.rst | |||
@@ -565,7 +565,7 @@ your software is built: | |||
565 | need to modify the configuration. | 565 | need to modify the configuration. |
566 | 566 | ||
567 | When using Autotools, your recipe needs to inherit the | 567 | When using Autotools, your recipe needs to inherit the |
568 | :ref:`autotools <ref-classes-autotools>` class and it does not have to | 568 | :ref:`ref-classes-autotools` class and it does not have to |
569 | contain a :ref:`ref-tasks-configure` task. However, you might still want to | 569 | contain a :ref:`ref-tasks-configure` task. However, you might still want to |
570 | make some adjustments. For example, you can set :term:`EXTRA_OECONF` or | 570 | make some adjustments. For example, you can set :term:`EXTRA_OECONF` or |
571 | :term:`PACKAGECONFIG_CONFARGS` to pass any needed configure options that | 571 | :term:`PACKAGECONFIG_CONFARGS` to pass any needed configure options that |
@@ -576,7 +576,7 @@ your software is built: | |||
576 | need to modify the configuration. | 576 | need to modify the configuration. |
577 | 577 | ||
578 | When you use CMake, your recipe needs to inherit the | 578 | When you use CMake, your recipe needs to inherit the |
579 | :ref:`cmake <ref-classes-cmake>` class and it does not have to contain a | 579 | :ref:`ref-classes-cmake` class and it does not have to contain a |
580 | :ref:`ref-tasks-configure` task. You can make some adjustments by setting | 580 | :ref:`ref-tasks-configure` task. You can make some adjustments by setting |
581 | :term:`EXTRA_OECMAKE` to pass any needed configure options that are | 581 | :term:`EXTRA_OECMAKE` to pass any needed configure options that are |
582 | specific to the recipe. | 582 | specific to the recipe. |
@@ -712,7 +712,7 @@ Here are some common issues that cause failures. | |||
712 | ":ref:`dev-manual/debugging:debugging parallel make races`" section. | 712 | ":ref:`dev-manual/debugging:debugging parallel make races`" section. |
713 | 713 | ||
714 | - *Improper host path usage:* This failure applies to recipes building | 714 | - *Improper host path usage:* This failure applies to recipes building |
715 | for the target or ":ref:`nativesdk <ref-classes-nativesdk>`" only. The | 715 | for the target or ":ref:`ref-classes-nativesdk`" only. The |
716 | failure occurs when the compilation process uses improper headers, | 716 | failure occurs when the compilation process uses improper headers, |
717 | libraries, or other files from the host system when cross-compiling for | 717 | libraries, or other files from the host system when cross-compiling for |
718 | the target. | 718 | the target. |
@@ -807,14 +807,13 @@ installed correctly. | |||
807 | re-execute :ref:`ref-tasks-install` if needed. | 807 | re-execute :ref:`ref-tasks-install` if needed. |
808 | 808 | ||
809 | - ``oe_runmake install``, which can be run directly or can be run | 809 | - ``oe_runmake install``, which can be run directly or can be run |
810 | indirectly by the | 810 | indirectly by the :ref:`ref-classes-autotools` and |
811 | :ref:`autotools <ref-classes-autotools>` and | 811 | :ref:`ref-classes-cmake` classes, runs ``make install`` in parallel. |
812 | :ref:`cmake <ref-classes-cmake>` classes, | 812 | Sometimes, a Makefile can have missing dependencies between targets that |
813 | runs ``make install`` in parallel. Sometimes, a Makefile can have | 813 | can result in race conditions. If you experience intermittent failures |
814 | missing dependencies between targets that can result in race | 814 | during :ref:`ref-tasks-install`, you might be able to work around them by |
815 | conditions. If you experience intermittent failures during | 815 | disabling parallel Makefile installs by adding the following to the |
816 | :ref:`ref-tasks-install`, you might be able to work around them by disabling | 816 | recipe:: |
817 | parallel Makefile installs by adding the following to the recipe:: | ||
818 | 817 | ||
819 | PARALLEL_MAKEINST = "" | 818 | PARALLEL_MAKEINST = "" |
820 | 819 | ||
@@ -854,7 +853,7 @@ different ways: | |||
854 | shutdown of all other programs. | 853 | shutdown of all other programs. |
855 | 854 | ||
856 | To enable a service using SysVinit, your recipe needs to inherit the | 855 | To enable a service using SysVinit, your recipe needs to inherit the |
857 | :ref:`update-rc.d <ref-classes-update-rc.d>` class. The class helps | 856 | :ref:`ref-classes-update-rc.d` class. The class helps |
858 | facilitate safely installing the package on the target. | 857 | facilitate safely installing the package on the target. |
859 | 858 | ||
860 | You will need to set the | 859 | You will need to set the |
@@ -870,7 +869,7 @@ different ways: | |||
870 | https://freedesktop.org/wiki/Software/systemd/. | 869 | https://freedesktop.org/wiki/Software/systemd/. |
871 | 870 | ||
872 | To enable a service using systemd, your recipe needs to inherit the | 871 | To enable a service using systemd, your recipe needs to inherit the |
873 | :ref:`systemd <ref-classes-systemd>` class. See the ``systemd.bbclass`` file | 872 | :ref:`ref-classes-systemd` class. See the ``systemd.bbclass`` file |
874 | located in your :term:`Source Directory` section for more information. | 873 | located in your :term:`Source Directory` section for more information. |
875 | 874 | ||
876 | Packaging | 875 | Packaging |
@@ -886,14 +885,12 @@ take. The following list describes the process: | |||
886 | other logical components that should be split out. The :ref:`ref-tasks-package` | 885 | other logical components that should be split out. The :ref:`ref-tasks-package` |
887 | task ensures that files are split up and packaged correctly. | 886 | task ensures that files are split up and packaged correctly. |
888 | 887 | ||
889 | - *Running QA Checks*: The | 888 | - *Running QA Checks*: The :ref:`ref-classes-insane` class adds a |
890 | :ref:`insane <ref-classes-insane>` class adds a | ||
891 | step to the package generation process so that output quality | 889 | step to the package generation process so that output quality |
892 | assurance checks are generated by the OpenEmbedded build system. This | 890 | assurance checks are generated by the OpenEmbedded build system. This |
893 | step performs a range of checks to be sure the build's output is free | 891 | step performs a range of checks to be sure the build's output is free |
894 | of common problems that show up during runtime. For information on | 892 | of common problems that show up during runtime. For information on |
895 | these checks, see the | 893 | these checks, see the :ref:`ref-classes-insane` class and |
896 | :ref:`insane <ref-classes-insane>` class and | ||
897 | the ":ref:`ref-manual/qa-checks:qa error and warning messages`" | 894 | the ":ref:`ref-manual/qa-checks:qa error and warning messages`" |
898 | chapter in the Yocto Project Reference Manual. | 895 | chapter in the Yocto Project Reference Manual. |
899 | 896 | ||
@@ -934,8 +931,7 @@ take. The following list describes the process: | |||
934 | On the other hand, if the recipe produces packages that do not | 931 | On the other hand, if the recipe produces packages that do not |
935 | contain anything specific to the target machine or architecture at | 932 | contain anything specific to the target machine or architecture at |
936 | all (e.g. recipes that simply package script files or configuration | 933 | all (e.g. recipes that simply package script files or configuration |
937 | files), you should use the | 934 | files), you should use the :ref:`ref-classes-allarch` class to |
938 | :ref:`allarch <ref-classes-allarch>` class to | ||
939 | do this for you by adding this to your recipe:: | 935 | do this for you by adding this to your recipe:: |
940 | 936 | ||
941 | inherit allarch | 937 | inherit allarch |
@@ -1002,18 +998,16 @@ same functionality, you can use a virtual provider (i.e. ``virtual/*``) | |||
1002 | as a placeholder for the actual provider. The actual provider is | 998 | as a placeholder for the actual provider. The actual provider is |
1003 | determined at build-time. | 999 | determined at build-time. |
1004 | 1000 | ||
1005 | A common scenario where a virtual provider is used would be for the | 1001 | A common scenario where a virtual provider is used would be for the kernel |
1006 | kernel recipe. Suppose you have three kernel recipes whose | 1002 | recipe. Suppose you have three kernel recipes whose :term:`PN` values map to |
1007 | :term:`PN` values map to ``kernel-big``, | 1003 | ``kernel-big``, ``kernel-mid``, and ``kernel-small``. Furthermore, each of |
1008 | ``kernel-mid``, and ``kernel-small``. Furthermore, each of these recipes | 1004 | these recipes in some way uses a :term:`PROVIDES` statement that essentially |
1009 | in some way uses a :term:`PROVIDES` | 1005 | identifies itself as being able to provide ``virtual/kernel``. Here is one way |
1010 | statement that essentially identifies itself as being able to provide | 1006 | through the :ref:`ref-classes-kernel` class:: |
1011 | ``virtual/kernel``. Here is one way through the | ||
1012 | :ref:`kernel <ref-classes-kernel>` class:: | ||
1013 | 1007 | ||
1014 | PROVIDES += "virtual/kernel" | 1008 | PROVIDES += "virtual/kernel" |
1015 | 1009 | ||
1016 | Any recipe that inherits the :ref:`kernel <ref-classes-kernel>` class is | 1010 | Any recipe that inherits the :ref:`ref-classes-kernel` class is |
1017 | going to utilize a :term:`PROVIDES` statement that identifies that recipe as | 1011 | going to utilize a :term:`PROVIDES` statement that identifies that recipe as |
1018 | being able to provide the ``virtual/kernel`` item. | 1012 | being able to provide the ``virtual/kernel`` item. |
1019 | 1013 | ||
@@ -1223,7 +1217,7 @@ Autotooled Package | |||
1223 | 1217 | ||
1224 | Applications that use Autotools such as ``autoconf`` and ``automake`` | 1218 | Applications that use Autotools such as ``autoconf`` and ``automake`` |
1225 | require a recipe that has a source archive listed in :term:`SRC_URI` and | 1219 | require a recipe that has a source archive listed in :term:`SRC_URI` and |
1226 | also inherit the :ref:`autotools <ref-classes-autotools>` class, | 1220 | also inherit the :ref:`ref-classes-autotools` class, |
1227 | which contains the definitions of all the steps needed to build an | 1221 | which contains the definitions of all the steps needed to build an |
1228 | Autotool-based application. The result of the build is automatically | 1222 | Autotool-based application. The result of the build is automatically |
1229 | packaged. And, if the application uses NLS for localization, packages | 1223 | packaged. And, if the application uses NLS for localization, packages |
@@ -1353,24 +1347,19 @@ could lead to compatibility problems with ABI in the future. However, | |||
1353 | sometimes you have no choice. | 1347 | sometimes you have no choice. |
1354 | 1348 | ||
1355 | The easiest solution is to create a recipe that uses the | 1349 | The easiest solution is to create a recipe that uses the |
1356 | :ref:`bin_package <ref-classes-bin-package>` class | 1350 | :ref:`ref-classes-bin-package` class and to be sure that you are using default |
1357 | and to be sure that you are using default locations for build artifacts. | 1351 | locations for build artifacts. In most cases, the |
1358 | In most cases, the :ref:`bin_package <ref-classes-bin-package>` class handles "skipping" the | 1352 | :ref:`ref-classes-bin-package` class handles "skipping" the configure and |
1359 | configure and compile steps as well as sets things up to grab packages | 1353 | compile steps as well as sets things up to grab packages from the appropriate |
1360 | from the appropriate area. In particular, this class sets ``noexec`` on | 1354 | area. In particular, this class sets ``noexec`` on both the |
1361 | both the :ref:`ref-tasks-configure` | 1355 | :ref:`ref-tasks-configure` and :ref:`ref-tasks-compile` tasks, sets |
1362 | and :ref:`ref-tasks-compile` tasks, | 1356 | ``FILES:${PN}`` to "/" so that it picks up all files, and sets up a |
1363 | sets ``FILES:${PN}`` to "/" so that it picks up all files, and sets up a | 1357 | :ref:`ref-tasks-install` task, which effectively copies all files from ``${S}`` |
1364 | :ref:`ref-tasks-install` task, which | 1358 | to ``${D}``. The :ref:`ref-classes-bin-package` class works well when the files |
1365 | effectively copies all files from ``${S}`` to ``${D}``. The | 1359 | extracted into ``${S}`` are already laid out in the way they should be laid out |
1366 | :ref:`bin_package <ref-classes-bin-package>` class works well when the files extracted into ``${S}`` | 1360 | on the target. For more information on these variables, see the :term:`FILES`, |
1367 | are already laid out in the way they should be laid out on the target. | 1361 | :term:`PN`, :term:`S`, and :term:`D` variables in the Yocto Project Reference |
1368 | For more information on these variables, see the | 1362 | Manual's variable glossary. |
1369 | :term:`FILES`, | ||
1370 | :term:`PN`, | ||
1371 | :term:`S`, and | ||
1372 | :term:`D` variables in the Yocto Project | ||
1373 | Reference Manual's variable glossary. | ||
1374 | 1363 | ||
1375 | .. note:: | 1364 | .. note:: |
1376 | 1365 | ||
@@ -1388,7 +1377,7 @@ Reference Manual's variable glossary. | |||
1388 | section in the Yocto Project Overview and Concepts Manual for more | 1377 | section in the Yocto Project Overview and Concepts Manual for more |
1389 | information. | 1378 | information. |
1390 | 1379 | ||
1391 | If you cannot use the :ref:`bin_package <ref-classes-bin-package>` class, you need to be sure you are | 1380 | If you cannot use the :ref:`ref-classes-bin-package` class, you need to be sure you are |
1392 | doing the following: | 1381 | doing the following: |
1393 | 1382 | ||
1394 | - Create a recipe where the | 1383 | - Create a recipe where the |
diff --git a/documentation/dev-manual/packages.rst b/documentation/dev-manual/packages.rst index 2decdcb253..0c584c177a 100644 --- a/documentation/dev-manual/packages.rst +++ b/documentation/dev-manual/packages.rst | |||
@@ -643,8 +643,7 @@ Lighttpd, or Nginx), take the appropriate steps to do so. | |||
643 | From within the :term:`Build Directory` where you have built an image based on | 643 | From within the :term:`Build Directory` where you have built an image based on |
644 | your packaging choice (i.e. the :term:`PACKAGE_CLASSES` setting), simply start | 644 | your packaging choice (i.e. the :term:`PACKAGE_CLASSES` setting), simply start |
645 | the server. The following example assumes a :term:`Build Directory` of ``poky/build`` | 645 | the server. The following example assumes a :term:`Build Directory` of ``poky/build`` |
646 | and a :term:`PACKAGE_CLASSES` setting of | 646 | and a :term:`PACKAGE_CLASSES` setting of ":ref:`ref-classes-package_rpm`":: |
647 | ":ref:`package_rpm <ref-classes-package_rpm>`":: | ||
648 | 647 | ||
649 | $ cd poky/build/tmp/deploy/rpm | 648 | $ cd poky/build/tmp/deploy/rpm |
650 | $ python3 -m http.server | 649 | $ python3 -m http.server |
@@ -909,8 +908,8 @@ see the :yocto_wiki:`Ptest </Ptest>` wiki page. | |||
909 | 908 | ||
910 | .. note:: | 909 | .. note:: |
911 | 910 | ||
912 | A recipe is "ptest-enabled" if it inherits the | 911 | A recipe is "ptest-enabled" if it inherits the :ref:`ref-classes-ptest` |
913 | :ref:`ptest <ref-classes-ptest>` class. | 912 | class. |
914 | 913 | ||
915 | Adding ptest to Your Build | 914 | Adding ptest to Your Build |
916 | -------------------------- | 915 | -------------------------- |
@@ -940,7 +939,7 @@ In order to enable a recipe to run installed ptests on target hardware, | |||
940 | you need to prepare the recipes that build the packages you want to | 939 | you need to prepare the recipes that build the packages you want to |
941 | test. Here is what you have to do for each recipe: | 940 | test. Here is what you have to do for each recipe: |
942 | 941 | ||
943 | - *Be sure the recipe inherits the* :ref:`ptest <ref-classes-ptest>` *class:* | 942 | - *Be sure the recipe inherits the* :ref:`ref-classes-ptest` *class:* |
944 | Include the following line in each recipe:: | 943 | Include the following line in each recipe:: |
945 | 944 | ||
946 | inherit ptest | 945 | inherit ptest |
@@ -991,7 +990,7 @@ test. Here is what you have to do for each recipe: | |||
991 | special configurations prior to compiling the test code, you must | 990 | special configurations prior to compiling the test code, you must |
992 | insert a ``do_configure_ptest`` function into the recipe. | 991 | insert a ``do_configure_ptest`` function into the recipe. |
993 | 992 | ||
994 | - *Install the test suite:* The :ref:`ptest <ref-classes-ptest>` class | 993 | - *Install the test suite:* The :ref:`ref-classes-ptest` class |
995 | automatically copies the file ``run-ptest`` to the target and then runs make | 994 | automatically copies the file ``run-ptest`` to the target and then runs make |
996 | ``install-ptest`` to run the tests. If this is not enough, you need | 995 | ``install-ptest`` to run the tests. If this is not enough, you need |
997 | to create a ``do_install_ptest`` function and make sure it gets | 996 | to create a ``do_install_ptest`` function and make sure it gets |
@@ -1145,9 +1144,8 @@ Here are three key points in the previous example: | |||
1145 | sub-module's license is unavailable, the sub-module's name appears in | 1144 | sub-module's license is unavailable, the sub-module's name appears in |
1146 | the comments. | 1145 | the comments. |
1147 | 1146 | ||
1148 | - The ``inherit npm`` statement causes the | 1147 | - The ``inherit npm`` statement causes the :ref:`ref-classes-npm` class to |
1149 | :ref:`npm <ref-classes-npm>` class to package | 1148 | package up all the modules. |
1150 | up all the modules. | ||
1151 | 1149 | ||
1152 | You can run the following command to build the ``cute-files`` package:: | 1150 | You can run the following command to build the ``cute-files`` package:: |
1153 | 1151 | ||
diff --git a/documentation/dev-manual/quilt.rst b/documentation/dev-manual/quilt.rst index 24343e2fac..59240705ad 100644 --- a/documentation/dev-manual/quilt.rst +++ b/documentation/dev-manual/quilt.rst | |||
@@ -12,7 +12,7 @@ form of a patch all using Quilt. | |||
12 | .. note:: | 12 | .. note:: |
13 | 13 | ||
14 | With regard to preserving changes to source files, if you clean a | 14 | With regard to preserving changes to source files, if you clean a |
15 | recipe or have :ref:`rm_work <ref-classes-rm-work>` enabled, the | 15 | recipe or have :ref:`ref-classes-rm-work` enabled, the |
16 | :ref:`devtool workflow <sdk-manual/extensible:using \`\`devtool\`\` in your sdk workflow>` | 16 | :ref:`devtool workflow <sdk-manual/extensible:using \`\`devtool\`\` in your sdk workflow>` |
17 | as described in the Yocto Project Application Development and the | 17 | as described in the Yocto Project Application Development and the |
18 | Extensible Software Development Kit (eSDK) manual is a safer | 18 | Extensible Software Development Kit (eSDK) manual is a safer |
@@ -61,7 +61,7 @@ Follow these general steps: | |||
61 | once you run the :ref:`ref-tasks-clean` or :ref:`ref-tasks-cleanall` | 61 | once you run the :ref:`ref-tasks-clean` or :ref:`ref-tasks-cleanall` |
62 | tasks using BitBake (i.e. ``bitbake -c clean package`` and | 62 | tasks using BitBake (i.e. ``bitbake -c clean package`` and |
63 | ``bitbake -c cleanall package``). Modifications will also disappear if | 63 | ``bitbake -c cleanall package``). Modifications will also disappear if |
64 | you use the :ref:`rm_work <ref-classes-rm-work>` feature as described in | 64 | you use the :ref:`ref-classes-rm-work` feature as described in |
65 | the ":ref:`dev-manual/disk-space:conserving disk space during builds`" | 65 | the ":ref:`dev-manual/disk-space:conserving disk space during builds`" |
66 | section. | 66 | section. |
67 | 67 | ||
diff --git a/documentation/dev-manual/read-only-rootfs.rst b/documentation/dev-manual/read-only-rootfs.rst index e29659c678..251178ed54 100644 --- a/documentation/dev-manual/read-only-rootfs.rst +++ b/documentation/dev-manual/read-only-rootfs.rst | |||
@@ -76,7 +76,7 @@ from running during root filesystem creation: | |||
76 | native tools, which run on the host system, to accomplish the same | 76 | native tools, which run on the host system, to accomplish the same |
77 | tasks, or by alternatively running the processes under QEMU, which | 77 | tasks, or by alternatively running the processes under QEMU, which |
78 | has the ``qemu_run_binary`` function. For more information, see the | 78 | has the ``qemu_run_binary`` function. For more information, see the |
79 | :ref:`qemu <ref-classes-qemu>` class. | 79 | :ref:`ref-classes-qemu` class. |
80 | 80 | ||
81 | Areas With Write Access | 81 | Areas With Write Access |
82 | ======================= | 82 | ======================= |
diff --git a/documentation/dev-manual/runtime-testing.rst b/documentation/dev-manual/runtime-testing.rst index 36ccf746ee..c5c5653bef 100644 --- a/documentation/dev-manual/runtime-testing.rst +++ b/documentation/dev-manual/runtime-testing.rst | |||
@@ -332,8 +332,8 @@ You can start the tests automatically or manually: | |||
332 | bitbake core-image-sato | 332 | bitbake core-image-sato |
333 | 333 | ||
334 | - *Manually running tests:* To manually run the tests, first globally | 334 | - *Manually running tests:* To manually run the tests, first globally |
335 | inherit the :ref:`testimage <ref-classes-testimage>` class | 335 | inherit the :ref:`ref-classes-testimage` class by editing your |
336 | by editing your ``local.conf`` file:: | 336 | ``local.conf`` file:: |
337 | 337 | ||
338 | INHERIT += "testimage" | 338 | INHERIT += "testimage" |
339 | 339 | ||
diff --git a/documentation/dev-manual/sbom.rst b/documentation/dev-manual/sbom.rst index d155b4775f..c67b7344d1 100644 --- a/documentation/dev-manual/sbom.rst +++ b/documentation/dev-manual/sbom.rst | |||
@@ -26,7 +26,7 @@ assessments, as all the components used in the Software Supply Chain are listed. | |||
26 | 26 | ||
27 | The OpenEmbedded build system doesn't generate such information by default. | 27 | The OpenEmbedded build system doesn't generate such information by default. |
28 | To make this happen, you must inherit the | 28 | To make this happen, you must inherit the |
29 | :ref:`create-spdx <ref-classes-create-spdx>` class from a configuration file:: | 29 | :ref:`ref-classes-create-spdx` class from a configuration file:: |
30 | 30 | ||
31 | INHERIT += "create-spdx" | 31 | INHERIT += "create-spdx" |
32 | 32 | ||
@@ -39,7 +39,7 @@ containing an index of JSON :term:`SPDX` files for individual recipes, together | |||
39 | with an ``IMAGE-MACHINE.spdx.tar.zst`` compressed archive containing all such | 39 | with an ``IMAGE-MACHINE.spdx.tar.zst`` compressed archive containing all such |
40 | files. | 40 | files. |
41 | 41 | ||
42 | The :ref:`create-spdx <ref-classes-create-spdx>` class offers options to include | 42 | The :ref:`ref-classes-create-spdx` class offers options to include |
43 | more information in the output :term:`SPDX` data, such as making the generated | 43 | more information in the output :term:`SPDX` data, such as making the generated |
44 | files more human readable (:term:`SPDX_PRETTY`), adding compressed archives of | 44 | files more human readable (:term:`SPDX_PRETTY`), adding compressed archives of |
45 | the files in the generated target packages (:term:`SPDX_ARCHIVE_PACKAGED`), | 45 | the files in the generated target packages (:term:`SPDX_ARCHIVE_PACKAGED`), |
diff --git a/documentation/dev-manual/securing-images.rst b/documentation/dev-manual/securing-images.rst index f8dd572104..6a9223c19c 100644 --- a/documentation/dev-manual/securing-images.rst +++ b/documentation/dev-manual/securing-images.rst | |||
@@ -128,11 +128,9 @@ system to make your images more secure: | |||
128 | service type users). When you set up passwords for multiple images or | 128 | service type users). When you set up passwords for multiple images or |
129 | users, you should not duplicate passwords. | 129 | users, you should not duplicate passwords. |
130 | 130 | ||
131 | To set up passwords, use the | 131 | To set up passwords, use the :ref:`ref-classes-extrausers` class, which |
132 | :ref:`extrausers <ref-classes-extrausers>` | 132 | is the preferred method. For an example on how to set up both root and |
133 | class, which is the preferred method. For an example on how to set up | 133 | user passwords, see the ":ref:`ref-classes-extrausers`" section. |
134 | both root and user passwords, see the | ||
135 | ":ref:`ref-classes-extrausers`" section. | ||
136 | 134 | ||
137 | .. note:: | 135 | .. note:: |
138 | 136 | ||
diff --git a/documentation/dev-manual/speeding-up-build.rst b/documentation/dev-manual/speeding-up-build.rst index 696b1bdf76..31b6f75ab0 100644 --- a/documentation/dev-manual/speeding-up-build.rst +++ b/documentation/dev-manual/speeding-up-build.rst | |||
@@ -61,8 +61,7 @@ Following are additional factors that can affect build speed: | |||
61 | file system on the principle that if there was a significant failure, | 61 | file system on the principle that if there was a significant failure, |
62 | the :term:`Build Directory` contents could easily be rebuilt. | 62 | the :term:`Build Directory` contents could easily be rebuilt. |
63 | 63 | ||
64 | - Inheriting the | 64 | - Inheriting the :ref:`ref-classes-rm-work` class: |
65 | :ref:`rm_work <ref-classes-rm-work>` class: | ||
66 | Inheriting this class has shown to speed up builds due to | 65 | Inheriting this class has shown to speed up builds due to |
67 | significantly lower amounts of data stored in the data cache as well | 66 | significantly lower amounts of data stored in the data cache as well |
68 | as on disk. Inheriting this class also makes cleanup of | 67 | as on disk. Inheriting this class also makes cleanup of |
diff --git a/documentation/dev-manual/upgrading-recipes.rst b/documentation/dev-manual/upgrading-recipes.rst index dd220cc6c8..13133fddcf 100644 --- a/documentation/dev-manual/upgrading-recipes.rst +++ b/documentation/dev-manual/upgrading-recipes.rst | |||
@@ -113,8 +113,7 @@ The following steps describe how to set up the AUH utility: | |||
113 | ``upgrade-helper/work/recipe/buildhistory-diff.txt`` file found in | 113 | ``upgrade-helper/work/recipe/buildhistory-diff.txt`` file found in |
114 | your :term:`Build Directory`. | 114 | your :term:`Build Directory`. |
115 | 115 | ||
116 | - If you want to enable testing through the | 116 | - If you want to enable testing through the :ref:`ref-classes-testimage` |
117 | :ref:`testimage <ref-classes-testimage>` | ||
118 | class, which is optional, you need to have the following set in | 117 | class, which is optional, you need to have the following set in |
119 | your ``conf/local.conf`` file:: | 118 | your ``conf/local.conf`` file:: |
120 | 119 | ||
diff --git a/documentation/dev-manual/vulnerabilities.rst b/documentation/dev-manual/vulnerabilities.rst index f8dac5edc6..0ee3ec52c5 100644 --- a/documentation/dev-manual/vulnerabilities.rst +++ b/documentation/dev-manual/vulnerabilities.rst | |||
@@ -27,8 +27,9 @@ patches to fix them, see ":ref:`dev-manual/changes:submitting a change to the yo | |||
27 | Vulnerability check at build time | 27 | Vulnerability check at build time |
28 | ================================= | 28 | ================================= |
29 | 29 | ||
30 | To enable a check for CVE security vulnerabilities using :ref:`cve-check <ref-classes-cve-check>` in the specific image | 30 | To enable a check for CVE security vulnerabilities using |
31 | or target you are building, add the following setting to your configuration:: | 31 | :ref:`ref-classes-cve-check` in the specific image or target you are building, |
32 | add the following setting to your configuration:: | ||
32 | 33 | ||
33 | INHERIT += "cve-check" | 34 | INHERIT += "cve-check" |
34 | 35 | ||
@@ -100,7 +101,7 @@ It is also possible to check the CVE status of individual packages as follows:: | |||
100 | Fixing CVE product name and version mappings | 101 | Fixing CVE product name and version mappings |
101 | ============================================ | 102 | ============================================ |
102 | 103 | ||
103 | By default, :ref:`cve-check <ref-classes-cve-check>` uses the recipe name :term:`BPN` as CVE | 104 | By default, :ref:`ref-classes-cve-check` uses the recipe name :term:`BPN` as CVE |
104 | product name when querying the CVE database. If this mapping contains false positives, e.g. | 105 | product name when querying the CVE database. If this mapping contains false positives, e.g. |
105 | some reported CVEs are not for the software component in question, or false negatives like | 106 | some reported CVEs are not for the software component in question, or false negatives like |
106 | some CVEs are not found to impact the recipe when they should, then the problems can be | 107 | some CVEs are not found to impact the recipe when they should, then the problems can be |
@@ -167,8 +168,7 @@ the :term:`CVE_CHECK_SKIP_RECIPE` variable. | |||
167 | Implementation details | 168 | Implementation details |
168 | ====================== | 169 | ====================== |
169 | 170 | ||
170 | Here's what the :ref:`cve-check <ref-classes-cve-check>` class does to | 171 | Here's what the :ref:`ref-classes-cve-check` class does to find unpatched CVE IDs. |
171 | find unpatched CVE IDs. | ||
172 | 172 | ||
173 | First the code goes through each patch file provided by a recipe. If a valid CVE ID | 173 | First the code goes through each patch file provided by a recipe. If a valid CVE ID |
174 | is found in the name of the file, the corresponding CVE is considered as patched. | 174 | is found in the name of the file, the corresponding CVE is considered as patched. |
diff --git a/documentation/dev-manual/wic.rst b/documentation/dev-manual/wic.rst index d698cec77c..a8d2f46955 100644 --- a/documentation/dev-manual/wic.rst +++ b/documentation/dev-manual/wic.rst | |||
@@ -59,8 +59,7 @@ this information is required to use Wic, you might find it interesting. | |||
59 | 59 | ||
60 | - Wic is a completely independent standalone utility that initially | 60 | - Wic is a completely independent standalone utility that initially |
61 | provides easier-to-use and more flexible replacements for an existing | 61 | provides easier-to-use and more flexible replacements for an existing |
62 | functionality in OE-Core's | 62 | functionality in OE-Core's :ref:`ref-classes-image-live` |
63 | :ref:`image-live <ref-classes-image-live>` | ||
64 | class. The difference between Wic and those examples is that with Wic | 63 | class. The difference between Wic and those examples is that with Wic |
65 | the functionality of those scripts is implemented by a | 64 | the functionality of those scripts is implemented by a |
66 | general-purpose partitioning language, which is based on Redhat | 65 | general-purpose partitioning language, which is based on Redhat |
diff --git a/documentation/kernel-dev/common.rst b/documentation/kernel-dev/common.rst index fd00a9d1dc..dff8f504fd 100644 --- a/documentation/kernel-dev/common.rst +++ b/documentation/kernel-dev/common.rst | |||
@@ -1685,12 +1685,10 @@ looks much like the one provided with the ``hello-mod`` template:: | |||
1685 | ... | 1685 | ... |
1686 | 1686 | ||
1687 | The important point to note here is the :term:`KERNEL_SRC` variable. The | 1687 | The important point to note here is the :term:`KERNEL_SRC` variable. The |
1688 | :ref:`module <ref-classes-module>` class sets this variable and the | 1688 | :ref:`ref-classes-module` class sets this variable and the :term:`KERNEL_PATH` |
1689 | :term:`KERNEL_PATH` variable to | 1689 | variable to ``${STAGING_KERNEL_DIR}`` with the necessary Linux kernel build |
1690 | ``${STAGING_KERNEL_DIR}`` with the necessary Linux kernel build | 1690 | information to build modules. If your module ``Makefile`` uses a different |
1691 | information to build modules. If your module ``Makefile`` uses a | 1691 | variable, you might want to override the :ref:`ref-tasks-compile` step, or |
1692 | different variable, you might want to override the | ||
1693 | :ref:`ref-tasks-compile` step, or | ||
1694 | create a patch to the ``Makefile`` to work with the more typical | 1692 | create a patch to the ``Makefile`` to work with the more typical |
1695 | :term:`KERNEL_SRC` or :term:`KERNEL_PATH` variables. | 1693 | :term:`KERNEL_SRC` or :term:`KERNEL_PATH` variables. |
1696 | 1694 | ||
diff --git a/documentation/migration-guides/migration-1.3.rst b/documentation/migration-guides/migration-1.3.rst index a135574744..95f7e3572b 100644 --- a/documentation/migration-guides/migration-1.3.rst +++ b/documentation/migration-guides/migration-1.3.rst | |||
@@ -91,11 +91,11 @@ consistency. | |||
91 | nativesdk | 91 | nativesdk |
92 | ~~~~~~~~~ | 92 | ~~~~~~~~~ |
93 | 93 | ||
94 | The suffix ``nativesdk`` is now implemented as a prefix, which simplifies a | 94 | The suffix ``nativesdk`` is now implemented as a prefix, which simplifies a lot |
95 | lot of the packaging code for :ref:`nativesdk <ref-classes-nativesdk>` recipes. | 95 | of the packaging code for :ref:`ref-classes-nativesdk` recipes. All custom |
96 | All custom :ref:`nativesdk <ref-classes-nativesdk>` recipes, which are | 96 | :ref:`ref-classes-nativesdk` recipes, which are relocatable packages that are |
97 | relocatable packages that are native to :term:`SDK_ARCH`, and any references | 97 | native to :term:`SDK_ARCH`, and any references need to be updated to use |
98 | need to be updated to use ``nativesdk-*`` instead of ``*-nativesdk``. | 98 | ``nativesdk-*`` instead of ``*-nativesdk``. |
99 | 99 | ||
100 | .. _migration-1.3-task-recipes: | 100 | .. _migration-1.3-task-recipes: |
101 | 101 | ||
@@ -109,7 +109,7 @@ automatic upgrade path for most packages. However, you should update | |||
109 | references in your own recipes and configurations as they could be | 109 | references in your own recipes and configurations as they could be |
110 | removed in future releases. You should also rename any custom ``task-*`` | 110 | removed in future releases. You should also rename any custom ``task-*`` |
111 | recipes to ``packagegroup-*``, and change them to inherit | 111 | recipes to ``packagegroup-*``, and change them to inherit |
112 | :ref:`packagegroup <ref-classes-packagegroup>` instead of ``task``, as well | 112 | :ref:`ref-classes-packagegroup` instead of ``task``, as well |
113 | as taking the opportunity to remove anything now handled by | 113 | as taking the opportunity to remove anything now handled by |
114 | :ref:`ref-classes-packagegroup`, such as providing ``-dev`` and ``-dbg`` | 114 | :ref:`ref-classes-packagegroup`, such as providing ``-dev`` and ``-dbg`` |
115 | packages, setting :term:`LIC_FILES_CHKSUM`, and so forth. See the | 115 | packages, setting :term:`LIC_FILES_CHKSUM`, and so forth. See the |
diff --git a/documentation/migration-guides/migration-1.5.rst b/documentation/migration-guides/migration-1.5.rst index 14b1f4a0a5..d82d33f91f 100644 --- a/documentation/migration-guides/migration-1.5.rst +++ b/documentation/migration-guides/migration-1.5.rst | |||
@@ -95,9 +95,8 @@ The following changes have been made to the package QA checks: | |||
95 | this file within :ref:`ref-tasks-install` if "make | 95 | this file within :ref:`ref-tasks-install` if "make |
96 | install" is installing it. | 96 | install" is installing it. |
97 | 97 | ||
98 | - If you are using the :ref:`buildhistory <ref-classes-buildhistory>` class, | 98 | - If you are using the :ref:`ref-classes-buildhistory` class, the check for the |
99 | the check for the package | 99 | package version going backwards is now controlled using a standard QA check. |
100 | version going backwards is now controlled using a standard QA check. | ||
101 | Thus, if you have customized your :term:`ERROR_QA` or :term:`WARN_QA` values | 100 | Thus, if you have customized your :term:`ERROR_QA` or :term:`WARN_QA` values |
102 | and still wish to have this check performed, you should add | 101 | and still wish to have this check performed, you should add |
103 | "version-going-backwards" to your value for one or the other | 102 | "version-going-backwards" to your value for one or the other |
@@ -131,7 +130,7 @@ The following directory changes exist: | |||
131 | it easier to delete :term:`TMPDIR` and preserve the build history. | 130 | it easier to delete :term:`TMPDIR` and preserve the build history. |
132 | Additionally, data for produced SDKs is now split by :term:`IMAGE_NAME`. | 131 | Additionally, data for produced SDKs is now split by :term:`IMAGE_NAME`. |
133 | 132 | ||
134 | - When :ref:`buildhistory <ref-classes-buildhistory>` is enabled, its output | 133 | - When :ref:`ref-classes-buildhistory` is enabled, its output |
135 | is now written under the :term:`Build Directory` rather than :term:`TMPDIR`. | 134 | is now written under the :term:`Build Directory` rather than :term:`TMPDIR`. |
136 | Doing so makes it easier to delete :term:`TMPDIR` and preserve the build | 135 | Doing so makes it easier to delete :term:`TMPDIR` and preserve the build |
137 | history. Additionally, data for produced SDKs is now split by :term:`IMAGE_NAME`. | 136 | history. Additionally, data for produced SDKs is now split by :term:`IMAGE_NAME`. |
@@ -223,7 +222,7 @@ Task Recipes | |||
223 | The previously deprecated ``task.bbclass`` has now been dropped. For | 222 | The previously deprecated ``task.bbclass`` has now been dropped. For |
224 | recipes that previously inherited from this class, you should rename | 223 | recipes that previously inherited from this class, you should rename |
225 | them from ``task-*`` to ``packagegroup-*`` and inherit | 224 | them from ``task-*`` to ``packagegroup-*`` and inherit |
226 | :ref:`packagegroup <ref-classes-packagegroup>` instead. | 225 | :ref:`ref-classes-packagegroup` instead. |
227 | 226 | ||
228 | For more information, see the ":ref:`ref-classes-packagegroup`" section. | 227 | For more information, see the ":ref:`ref-classes-packagegroup`" section. |
229 | 228 | ||
diff --git a/documentation/migration-guides/migration-1.6.rst b/documentation/migration-guides/migration-1.6.rst index 1baf8b311a..48c7c7572e 100644 --- a/documentation/migration-guides/migration-1.6.rst +++ b/documentation/migration-guides/migration-1.6.rst | |||
@@ -11,9 +11,8 @@ Project 1.6 Release (codename "daisy") from the prior release. | |||
11 | ``archiver`` Class | 11 | ``archiver`` Class |
12 | ------------------ | 12 | ------------------ |
13 | 13 | ||
14 | The :ref:`archiver <ref-classes-archiver>` class has been rewritten | 14 | The :ref:`ref-classes-archiver` class has been rewritten and its configuration |
15 | and its configuration has been simplified. For more details on the | 15 | has been simplified. For more details on the source archiver, see the |
16 | source archiver, see the | ||
17 | ":ref:`dev-manual/licenses:maintaining open source license compliance during your product's lifecycle`" | 16 | ":ref:`dev-manual/licenses:maintaining open source license compliance during your product's lifecycle`" |
18 | section in the Yocto Project Development Tasks Manual. | 17 | section in the Yocto Project Development Tasks Manual. |
19 | 18 | ||
@@ -224,7 +223,7 @@ Package Tests (ptest) are built but not installed by default. For | |||
224 | information on using Package Tests, see the | 223 | information on using Package Tests, see the |
225 | ":ref:`dev-manual/packages:testing packages with ptest`" section in the | 224 | ":ref:`dev-manual/packages:testing packages with ptest`" section in the |
226 | Yocto Project Development Tasks Manual. For information on the | 225 | Yocto Project Development Tasks Manual. For information on the |
227 | :ref:`ptest <ref-classes-ptest>` class, see the ":ref:`ref-classes-ptest`" | 226 | :ref:`ref-classes-ptest` class, see the ":ref:`ref-classes-ptest`" |
228 | section. | 227 | section. |
229 | 228 | ||
230 | .. _migration-1.6-build-changes: | 229 | .. _migration-1.6-build-changes: |
@@ -234,13 +233,13 @@ Build Changes | |||
234 | 233 | ||
235 | Separate build and source directories have been enabled by default for | 234 | Separate build and source directories have been enabled by default for |
236 | selected recipes where it is known to work and for all | 235 | selected recipes where it is known to work and for all |
237 | recipes that inherit the :ref:`cmake <ref-classes-cmake>` class. In | 236 | recipes that inherit the :ref:`ref-classes-cmake` class. In |
238 | future releases the :ref:`autotools <ref-classes-autotools>` class | 237 | future releases the :ref:`ref-classes-autotools` class |
239 | will enable a separate :term:`Build Directory` by default as well. Recipes | 238 | will enable a separate :term:`Build Directory` by default as well. Recipes |
240 | building Autotools-based software that fails to build with a separate | 239 | building Autotools-based software that fails to build with a separate |
241 | :term:`Build Directory` should be changed to inherit from the | 240 | :term:`Build Directory` should be changed to inherit from the |
242 | :ref:`autotools-brokensep <ref-classes-autotools>` class instead of | 241 | :ref:`autotools-brokensep <ref-classes-autotools>` class instead of |
243 | the :ref:`autotools <ref-classes-autotools>` or ``autotools_stage`` classes. | 242 | the :ref:`ref-classes-autotools` or ``autotools_stage`` classes. |
244 | 243 | ||
245 | .. _migration-1.6-building-qemu-native: | 244 | .. _migration-1.6-building-qemu-native: |
246 | 245 | ||
diff --git a/documentation/migration-guides/migration-1.7.rst b/documentation/migration-guides/migration-1.7.rst index 94e9904b66..ca8222098a 100644 --- a/documentation/migration-guides/migration-1.7.rst +++ b/documentation/migration-guides/migration-1.7.rst | |||
@@ -41,13 +41,11 @@ section for more information. | |||
41 | Autotools Class Changes | 41 | Autotools Class Changes |
42 | ----------------------- | 42 | ----------------------- |
43 | 43 | ||
44 | The following :ref:`autotools <ref-classes-autotools>` class changes | 44 | The following :ref:`ref-classes-autotools` class changes occurred: |
45 | occurred: | ||
46 | 45 | ||
47 | - *A separate :term:`Build Directory` is now used by default:* The | 46 | - *A separate :term:`Build Directory` is now used by default:* The |
48 | :ref:`autotools <ref-classes-autotools>` class has been | 47 | :ref:`ref-classes-autotools` class has been changed to use a directory for |
49 | changed to use a directory for building | 48 | building (:term:`B`), which is separate from the source directory |
50 | (:term:`B`), which is separate from the source directory | ||
51 | (:term:`S`). This is commonly referred to as ``B != S``, or | 49 | (:term:`S`). This is commonly referred to as ``B != S``, or |
52 | an out-of-tree build. | 50 | an out-of-tree build. |
53 | 51 | ||
@@ -56,9 +54,8 @@ occurred: | |||
56 | However, if the software is not capable of being built in this | 54 | However, if the software is not capable of being built in this |
57 | manner, you will need to either patch the software so that it can | 55 | manner, you will need to either patch the software so that it can |
58 | build separately, or you will need to change the recipe to inherit | 56 | build separately, or you will need to change the recipe to inherit |
59 | the :ref:`autotools-brokensep <ref-classes-autotools>` class | 57 | the :ref:`autotools-brokensep <ref-classes-autotools>` class instead |
60 | instead of the :ref:`autotools <ref-classes-autotools>` | 58 | of the :ref:`ref-classes-autotools` or ``autotools_stage`` classes. |
61 | or ``autotools_stage`` classes. | ||
62 | 59 | ||
63 | - The ``--foreign`` option is no longer passed to ``automake`` when | 60 | - The ``--foreign`` option is no longer passed to ``automake`` when |
64 | running ``autoconf``: This option tells ``automake`` that a | 61 | running ``autoconf``: This option tells ``automake`` that a |
diff --git a/documentation/migration-guides/migration-1.8.rst b/documentation/migration-guides/migration-1.8.rst index 6a1f9ed56d..5cc5f8a047 100644 --- a/documentation/migration-guides/migration-1.8.rst +++ b/documentation/migration-guides/migration-1.8.rst | |||
@@ -70,17 +70,16 @@ the following:: | |||
70 | Kernel Build Changes | 70 | Kernel Build Changes |
71 | -------------------- | 71 | -------------------- |
72 | 72 | ||
73 | The kernel build process was changed to place the source in a common | 73 | The kernel build process was changed to place the source in a common shared work |
74 | shared work area and to place build artifacts separately in the source | 74 | area and to place build artifacts separately in the source code tree. In theory, |
75 | code tree. In theory, migration paths have been provided for most common | 75 | migration paths have been provided for most common usages in kernel recipes but |
76 | usages in kernel recipes but this might not work in all cases. In | 76 | this might not work in all cases. In particular, users need to ensure that |
77 | particular, users need to ensure that ``${S}`` (source files) and | 77 | ``${S}`` (source files) and ``${B}`` (build artifacts) are used correctly in |
78 | ``${B}`` (build artifacts) are used correctly in functions such as | 78 | functions such as :ref:`ref-tasks-configure` and :ref:`ref-tasks-install`. For |
79 | :ref:`ref-tasks-configure` and | 79 | kernel recipes that do not inherit from :ref:`ref-classes-kernel-yocto` or |
80 | :ref:`ref-tasks-install`. For kernel recipes that do not | 80 | include ``linux-yocto.inc``, you might wish to refer to the ``linux.inc`` file |
81 | inherit from :ref:`kernel-yocto <ref-classes-kernel-yocto>` or include ``linux-yocto.inc``, you might | 81 | in the ``meta-oe`` layer for the kinds of changes you need to make. For reference, |
82 | wish to refer to the ``linux.inc`` file in the ``meta-oe`` layer for the | 82 | here is the |
83 | kinds of changes you need to make. For reference, here is the | ||
84 | :oe_git:`commit </meta-openembedded/commit/meta-oe/recipes-kernel/linux/linux.inc?id=fc7132ede27ac67669448d3d2845ce7d46c6a1ee>` | 83 | :oe_git:`commit </meta-openembedded/commit/meta-oe/recipes-kernel/linux/linux.inc?id=fc7132ede27ac67669448d3d2845ce7d46c6a1ee>` |
85 | where the ``linux.inc`` file in ``meta-oe`` was updated. | 84 | where the ``linux.inc`` file in ``meta-oe`` was updated. |
86 | 85 | ||
@@ -123,10 +122,9 @@ need to take corrective steps. | |||
123 | Rebuild Improvements | 122 | Rebuild Improvements |
124 | -------------------- | 123 | -------------------- |
125 | 124 | ||
126 | Changes have been made to the :ref:`base <ref-classes-base>`, | 125 | Changes have been made to the :ref:`ref-classes-base`, |
127 | :ref:`autotools <ref-classes-autotools>`, and | 126 | :ref:`ref-classes-autotools`, and :ref:`ref-classes-cmake` classes to clean out |
128 | :ref:`cmake <ref-classes-cmake>` classes to clean out generated files | 127 | generated files when the :ref:`ref-tasks-configure` task needs to be |
129 | when the :ref:`ref-tasks-configure` task needs to be | ||
130 | re-executed. | 128 | re-executed. |
131 | 129 | ||
132 | One of the improvements is to attempt to run "make clean" during the | 130 | One of the improvements is to attempt to run "make clean" during the |
diff --git a/documentation/migration-guides/migration-2.0.rst b/documentation/migration-guides/migration-2.0.rst index 66b3c632f9..13be9846df 100644 --- a/documentation/migration-guides/migration-2.0.rst +++ b/documentation/migration-guides/migration-2.0.rst | |||
@@ -216,7 +216,7 @@ modifications synchronized, it is not always obvious to developers how | |||
216 | to manipulate the Metadata as compared to the source. | 216 | to manipulate the Metadata as compared to the source. |
217 | 217 | ||
218 | Metadata processing has now been removed from the | 218 | Metadata processing has now been removed from the |
219 | :ref:`kernel-yocto <ref-classes-kernel-yocto>` class and the external | 219 | :ref:`ref-classes-kernel-yocto` class and the external |
220 | Metadata repository ``yocto-kernel-cache``, which has always been used | 220 | Metadata repository ``yocto-kernel-cache``, which has always been used |
221 | to seed the ``linux-yocto`` "meta" branch. This separate ``linux-yocto`` | 221 | to seed the ``linux-yocto`` "meta" branch. This separate ``linux-yocto`` |
222 | cache repository is now the primary location for this data. Due to this | 222 | cache repository is now the primary location for this data. Due to this |
diff --git a/documentation/migration-guides/migration-2.1.rst b/documentation/migration-guides/migration-2.1.rst index 01352acbfa..18b05b52cc 100644 --- a/documentation/migration-guides/migration-2.1.rst +++ b/documentation/migration-guides/migration-2.1.rst | |||
@@ -66,7 +66,7 @@ Makefile Environment Changes | |||
66 | :term:`EXTRA_OEMAKE` now defaults to "" instead of | 66 | :term:`EXTRA_OEMAKE` now defaults to "" instead of |
67 | "-e MAKEFLAGS=". Setting :term:`EXTRA_OEMAKE` to "-e MAKEFLAGS=" by default | 67 | "-e MAKEFLAGS=". Setting :term:`EXTRA_OEMAKE` to "-e MAKEFLAGS=" by default |
68 | was a historical accident that has required many classes (e.g. | 68 | was a historical accident that has required many classes (e.g. |
69 | :ref:`autotools <ref-classes-autotools>`, ``module``) and recipes to override this default in order | 69 | :ref:`ref-classes-autotools`, ``module``) and recipes to override this default in order |
70 | to work with sensible build systems. When upgrading to the release, you | 70 | to work with sensible build systems. When upgrading to the release, you |
71 | must edit any recipe that relies upon this old default by either setting | 71 | must edit any recipe that relies upon this old default by either setting |
72 | :term:`EXTRA_OEMAKE` back to "-e MAKEFLAGS=" or by explicitly setting any | 72 | :term:`EXTRA_OEMAKE` back to "-e MAKEFLAGS=" or by explicitly setting any |
@@ -100,7 +100,7 @@ breaking FHS. | |||
100 | ``ac_cv_sizeof_off_t`` is No Longer Cached in Site Files | 100 | ``ac_cv_sizeof_off_t`` is No Longer Cached in Site Files |
101 | -------------------------------------------------------- | 101 | -------------------------------------------------------- |
102 | 102 | ||
103 | For recipes inheriting the :ref:`autotools <ref-classes-autotools>` | 103 | For recipes inheriting the :ref:`ref-classes-autotools` |
104 | class, ``ac_cv_sizeof_off_t`` is no longer cached in the site files for | 104 | class, ``ac_cv_sizeof_off_t`` is no longer cached in the site files for |
105 | ``autoconf``. The reason for this change is because the | 105 | ``autoconf``. The reason for this change is because the |
106 | ``ac_cv_sizeof_off_t`` value is not necessarily static per architecture | 106 | ``ac_cv_sizeof_off_t`` value is not necessarily static per architecture |
@@ -108,12 +108,12 @@ as was previously assumed. Rather, the value changes based on whether | |||
108 | large file support is enabled. For most software that uses ``autoconf``, | 108 | large file support is enabled. For most software that uses ``autoconf``, |
109 | this change should not be a problem. However, if you have a recipe that | 109 | this change should not be a problem. However, if you have a recipe that |
110 | bypasses the standard :ref:`ref-tasks-configure` task | 110 | bypasses the standard :ref:`ref-tasks-configure` task |
111 | from the :ref:`autotools <ref-classes-autotools>` class and the software the recipe is building | 111 | from the :ref:`ref-classes-autotools` class and the software the recipe is building |
112 | uses a very old version of ``autoconf``, the recipe might be incapable | 112 | uses a very old version of ``autoconf``, the recipe might be incapable |
113 | of determining the correct size of ``off_t`` during :ref:`ref-tasks-configure`. | 113 | of determining the correct size of ``off_t`` during :ref:`ref-tasks-configure`. |
114 | 114 | ||
115 | The best course of action is to patch the software as necessary to allow | 115 | The best course of action is to patch the software as necessary to allow |
116 | the default implementation from the :ref:`autotools <ref-classes-autotools>` class to work such | 116 | the default implementation from the :ref:`ref-classes-autotools` class to work such |
117 | that ``autoreconf`` succeeds and produces a working configure script, | 117 | that ``autoreconf`` succeeds and produces a working configure script, |
118 | and to remove the overridden :ref:`ref-tasks-configure` task such that the default | 118 | and to remove the overridden :ref:`ref-tasks-configure` task such that the default |
119 | implementation does get used. | 119 | implementation does get used. |
@@ -138,9 +138,8 @@ should make edits so that those tasks are after the | |||
138 | after :ref:`ref-tasks-rootfs` so that your added tasks run at the correct | 138 | after :ref:`ref-tasks-rootfs` so that your added tasks run at the correct |
139 | time. | 139 | time. |
140 | 140 | ||
141 | A minor part of this restructuring is that the post-processing | 141 | A minor part of this restructuring is that the post-processing definitions and |
142 | definitions and functions have been moved from the | 142 | functions have been moved from the :ref:`ref-classes-image` class to the |
143 | :ref:`image <ref-classes-image>` class to the | ||
144 | :ref:`rootfs-postcommands <ref-classes-rootfs*>` class. Functionally, | 143 | :ref:`rootfs-postcommands <ref-classes-rootfs*>` class. Functionally, |
145 | however, they remain unchanged. | 144 | however, they remain unchanged. |
146 | 145 | ||
@@ -191,18 +190,17 @@ Class Changes | |||
191 | The following classes have changed: | 190 | The following classes have changed: |
192 | 191 | ||
193 | - ``autotools_stage``: Removed because the | 192 | - ``autotools_stage``: Removed because the |
194 | :ref:`autotools <ref-classes-autotools>` class now provides its | 193 | :ref:`ref-classes-autotools` class now provides its |
195 | functionality. Recipes that inherited from ``autotools_stage`` should | 194 | functionality. Recipes that inherited from ``autotools_stage`` should |
196 | now inherit from :ref:`autotools <ref-classes-autotools>` instead. | 195 | now inherit from :ref:`ref-classes-autotools` instead. |
197 | 196 | ||
198 | - ``boot-directdisk``: Merged into the ``image-vm`` class. The | 197 | - ``boot-directdisk``: Merged into the ``image-vm`` class. The |
199 | ``boot-directdisk`` class was rarely directly used. Consequently, | 198 | ``boot-directdisk`` class was rarely directly used. Consequently, |
200 | this change should not cause any issues. | 199 | this change should not cause any issues. |
201 | 200 | ||
202 | - ``bootimg``: Merged into the | 201 | - ``bootimg``: Merged into the :ref:`ref-classes-image-live` class. The |
203 | :ref:`image-live <ref-classes-image-live>` class. The ``bootimg`` | 202 | ``bootimg`` class was rarely directly used. Consequently, this change should |
204 | class was rarely directly used. Consequently, this change should not | 203 | not cause any issues. |
205 | cause any issues. | ||
206 | 204 | ||
207 | - ``packageinfo``: Removed due to its limited use by the Hob UI, which | 205 | - ``packageinfo``: Removed due to its limited use by the Hob UI, which |
208 | has itself been removed. | 206 | has itself been removed. |
@@ -257,14 +255,14 @@ The following changes have been made for the Poky distribution: | |||
257 | not need to change anything unless you are relying on this naming | 255 | not need to change anything unless you are relying on this naming |
258 | elsewhere. | 256 | elsewhere. |
259 | 257 | ||
260 | - The :ref:`uninative <ref-classes-uninative>` class is now enabled | 258 | - The :ref:`ref-classes-uninative` class is now enabled |
261 | by default in Poky. This class attempts to isolate the build system | 259 | by default in Poky. This class attempts to isolate the build system |
262 | from the host distribution's C library and makes re-use of native | 260 | from the host distribution's C library and makes re-use of native |
263 | shared state artifacts across different host distributions practical. | 261 | shared state artifacts across different host distributions practical. |
264 | With this class enabled, a tarball containing a pre-built C library | 262 | With this class enabled, a tarball containing a pre-built C library |
265 | is downloaded at the start of the build. | 263 | is downloaded at the start of the build. |
266 | 264 | ||
267 | The :ref:`uninative <ref-classes-uninative>` class is enabled through the | 265 | The :ref:`ref-classes-uninative` class is enabled through the |
268 | ``meta/conf/distro/include/yocto-uninative.inc`` file, which for | 266 | ``meta/conf/distro/include/yocto-uninative.inc`` file, which for |
269 | those not using the Poky distribution, can include to easily enable | 267 | those not using the Poky distribution, can include to easily enable |
270 | the same functionality. | 268 | the same functionality. |
@@ -403,9 +401,9 @@ These additional changes exist: | |||
403 | as these directories are automatically found and added. | 401 | as these directories are automatically found and added. |
404 | 402 | ||
405 | - Inaccurate disk and CPU percentage data has been dropped from | 403 | - Inaccurate disk and CPU percentage data has been dropped from |
406 | :ref:`buildstats <ref-classes-buildstats>` output. This data has been replaced with | 404 | :ref:`ref-classes-buildstats` output. This data has been replaced with |
407 | ``getrusage()`` data and corrected IO statistics. You will probably | 405 | ``getrusage()`` data and corrected IO statistics. You will probably |
408 | need to update any custom code that reads the :ref:`buildstats <ref-classes-buildstats>` data. | 406 | need to update any custom code that reads the :ref:`ref-classes-buildstats` data. |
409 | 407 | ||
410 | - The ``meta/conf/distro/include/package_regex.inc`` is now deprecated. | 408 | - The ``meta/conf/distro/include/package_regex.inc`` is now deprecated. |
411 | The contents of this file have been moved to individual recipes. | 409 | The contents of this file have been moved to individual recipes. |
diff --git a/documentation/migration-guides/migration-2.3.rst b/documentation/migration-guides/migration-2.3.rst index 6126af857d..38117d41b4 100644 --- a/documentation/migration-guides/migration-2.3.rst +++ b/documentation/migration-guides/migration-2.3.rst | |||
@@ -52,7 +52,7 @@ Consider the following: | |||
52 | post-installation script that is installed by a function added to | 52 | post-installation script that is installed by a function added to |
53 | :term:`SYSROOT_PREPROCESS_FUNCS`. | 53 | :term:`SYSROOT_PREPROCESS_FUNCS`. |
54 | 54 | ||
55 | For an example, see the :ref:`pixbufcache <ref-classes-pixbufcache>` class in ``meta/classes/`` in | 55 | For an example, see the :ref:`ref-classes-pixbufcache` class in ``meta/classes/`` in |
56 | the :ref:`overview-manual/development-environment:yocto project source repositories`. | 56 | the :ref:`overview-manual/development-environment:yocto project source repositories`. |
57 | 57 | ||
58 | .. note:: | 58 | .. note:: |
@@ -402,7 +402,7 @@ The following QA checks have changed: | |||
402 | warning, you need to address missing runtime dependencies. | 402 | warning, you need to address missing runtime dependencies. |
403 | 403 | ||
404 | For additional information, see the | 404 | For additional information, see the |
405 | :ref:`insane <ref-classes-insane>` class and the | 405 | :ref:`ref-classes-insane` class and the |
406 | ":ref:`ref-manual/qa-checks:errors and warnings`" section. | 406 | ":ref:`ref-manual/qa-checks:errors and warnings`" section. |
407 | 407 | ||
408 | .. _migration-2.3-miscellaneous-changes: | 408 | .. _migration-2.3-miscellaneous-changes: |
@@ -446,7 +446,7 @@ The following miscellaneous changes have occurred: | |||
446 | RSA keys only, and with recent versions of OpenSSH, which deprecates | 446 | RSA keys only, and with recent versions of OpenSSH, which deprecates |
447 | DSA host keys. | 447 | DSA host keys. |
448 | 448 | ||
449 | - The :ref:`buildhistory <ref-classes-buildhistory>` class now | 449 | - The :ref:`ref-classes-buildhistory` class now |
450 | correctly uses tabs as separators between all columns in | 450 | correctly uses tabs as separators between all columns in |
451 | ``installed-package-sizes.txt`` in order to aid import into other | 451 | ``installed-package-sizes.txt`` in order to aid import into other |
452 | tools. | 452 | tools. |
@@ -484,26 +484,24 @@ The following miscellaneous changes have occurred: | |||
484 | 484 | ||
485 | If you need to preserve these ``.la`` files (e.g. in a custom | 485 | If you need to preserve these ``.la`` files (e.g. in a custom |
486 | distribution), you must change :term:`INHERIT_DISTRO` such that | 486 | distribution), you must change :term:`INHERIT_DISTRO` such that |
487 | ":ref:`remove-libtool <ref-classes-remove-libtool>`" is not included | 487 | ":ref:`ref-classes-remove-libtool`" is not included |
488 | in the value. | 488 | in the value. |
489 | 489 | ||
490 | - Extensible SDKs built for GCC 5+ now refuse to install on a | 490 | - Extensible SDKs built for GCC 5+ now refuse to install on a |
491 | distribution where the host GCC version is 4.8 or 4.9. This change | 491 | distribution where the host GCC version is 4.8 or 4.9. This change |
492 | resulted from the fact that the installation is known to fail due to | 492 | resulted from the fact that the installation is known to fail due to |
493 | the way the ``uninative`` shared state (sstate) package is built. See | 493 | the way the ``uninative`` shared state (sstate) package is built. See |
494 | the :ref:`uninative <ref-classes-uninative>` class for additional | 494 | the :ref:`ref-classes-uninative` class for additional information. |
495 | information. | ||
496 | 495 | ||
497 | - All :ref:`native <ref-classes-native>` and | 496 | - All :ref:`ref-classes-native` and :ref:`ref-classes-nativesdk` recipes now |
498 | :ref:`nativesdk <ref-classes-nativesdk>` recipes now use a separate | 497 | use a separate :term:`DISTRO_FEATURES` value instead of sharing the value |
499 | :term:`DISTRO_FEATURES` value instead of sharing the value used by | 498 | used by recipes for the target, in order to avoid unnecessary rebuilds. |
500 | recipes for the target, in order to avoid unnecessary rebuilds. | ||
501 | 499 | ||
502 | The :term:`DISTRO_FEATURES` for :ref:`native <ref-classes-native>` recipes | 500 | The :term:`DISTRO_FEATURES` for :ref:`ref-classes-native` recipes |
503 | is :term:`DISTRO_FEATURES_NATIVE` added to an intersection of | 501 | is :term:`DISTRO_FEATURES_NATIVE` added to an intersection of |
504 | :term:`DISTRO_FEATURES` and :term:`DISTRO_FEATURES_FILTER_NATIVE`. | 502 | :term:`DISTRO_FEATURES` and :term:`DISTRO_FEATURES_FILTER_NATIVE`. |
505 | 503 | ||
506 | For :ref:`nativesdk <ref-classes-nativesdk>` recipes, the corresponding | 504 | For :ref:`ref-classes-nativesdk` recipes, the corresponding |
507 | variables are :term:`DISTRO_FEATURES_NATIVESDK` and | 505 | variables are :term:`DISTRO_FEATURES_NATIVESDK` and |
508 | :term:`DISTRO_FEATURES_FILTER_NATIVESDK`. | 506 | :term:`DISTRO_FEATURES_FILTER_NATIVESDK`. |
509 | 507 | ||
diff --git a/documentation/migration-guides/migration-2.4.rst b/documentation/migration-guides/migration-2.4.rst index 74149f8058..9637301a47 100644 --- a/documentation/migration-guides/migration-2.4.rst +++ b/documentation/migration-guides/migration-2.4.rst | |||
@@ -197,12 +197,10 @@ Kernel Device Tree Move | |||
197 | ----------------------- | 197 | ----------------------- |
198 | 198 | ||
199 | Kernel Device Tree support is now easier to enable in a kernel recipe. | 199 | Kernel Device Tree support is now easier to enable in a kernel recipe. |
200 | The Device Tree code has moved to a | 200 | The Device Tree code has moved to a :ref:`ref-classes-kernel-devicetree` class. |
201 | :ref:`kernel-devicetree <ref-classes-kernel-devicetree>` class. | ||
202 | Functionality is automatically enabled for any recipe that inherits the | 201 | Functionality is automatically enabled for any recipe that inherits the |
203 | :ref:`kernel <ref-classes-kernel>` class and sets the | 202 | :ref:`kernel <ref-classes-kernel>` class and sets the :term:`KERNEL_DEVICETREE` |
204 | :term:`KERNEL_DEVICETREE` variable. The | 203 | variable. The previous mechanism for doing this, |
205 | previous mechanism for doing this, | ||
206 | ``meta/recipes-kernel/linux/linux-dtb.inc``, is still available to avoid | 204 | ``meta/recipes-kernel/linux/linux-dtb.inc``, is still available to avoid |
207 | breakage, but triggers a deprecation warning. Future releases of the | 205 | breakage, but triggers a deprecation warning. Future releases of the |
208 | Yocto Project will remove ``meta/recipes-kernel/linux/linux-dtb.inc``. | 206 | Yocto Project will remove ``meta/recipes-kernel/linux/linux-dtb.inc``. |
@@ -271,11 +269,11 @@ The following are additional changes: | |||
271 | from ``meta-poky`` to OE-Core (i.e. from | 269 | from ``meta-poky`` to OE-Core (i.e. from |
272 | ``meta-poky/conf/distro/include`` to ``meta/conf/distro/include``). | 270 | ``meta-poky/conf/distro/include`` to ``meta/conf/distro/include``). |
273 | 271 | ||
274 | - The :ref:`buildhistory <ref-classes-buildhistory>` class now makes | 272 | - The :ref:`ref-classes-buildhistory` class now makes |
275 | a single commit per build rather than one commit per subdirectory in | 273 | a single commit per build rather than one commit per subdirectory in |
276 | the repository. This behavior assumes the commits are enabled with | 274 | the repository. This behavior assumes the commits are enabled with |
277 | :term:`BUILDHISTORY_COMMIT` = "1", which | 275 | :term:`BUILDHISTORY_COMMIT` = "1", which |
278 | is typical. Previously, the :ref:`buildhistory <ref-classes-buildhistory>` class made one commit | 276 | is typical. Previously, the :ref:`ref-classes-buildhistory` class made one commit |
279 | per subdirectory in the repository in order to make it easier to see | 277 | per subdirectory in the repository in order to make it easier to see |
280 | the changes for a particular subdirectory. To view a particular | 278 | the changes for a particular subdirectory. To view a particular |
281 | change, specify that subdirectory as the last parameter on the | 279 | change, specify that subdirectory as the last parameter on the |
diff --git a/documentation/migration-guides/migration-2.5.rst b/documentation/migration-guides/migration-2.5.rst index 8456c2306a..9f089bb93b 100644 --- a/documentation/migration-guides/migration-2.5.rst +++ b/documentation/migration-guides/migration-2.5.rst | |||
@@ -139,7 +139,7 @@ The following are BitBake changes: | |||
139 | - Several explicit "run this task for all recipes in the dependency | 139 | - Several explicit "run this task for all recipes in the dependency |
140 | tree" tasks have been removed (e.g. ``fetchall``, ``checkuriall``, | 140 | tree" tasks have been removed (e.g. ``fetchall``, ``checkuriall``, |
141 | and the ``*all`` tasks provided by the ``distrodata`` and | 141 | and the ``*all`` tasks provided by the ``distrodata`` and |
142 | :ref:`archiver <ref-classes-archiver>` classes). There is a BitBake option to complete this for | 142 | :ref:`ref-classes-archiver` classes). There is a BitBake option to complete this for |
143 | any arbitrary task. For example:: | 143 | any arbitrary task. For example:: |
144 | 144 | ||
145 | bitbake <target> -c fetchall | 145 | bitbake <target> -c fetchall |
@@ -189,7 +189,7 @@ Miscellaneous Changes | |||
189 | 189 | ||
190 | The following are additional changes: | 190 | The following are additional changes: |
191 | 191 | ||
192 | - The :ref:`kernel <ref-classes-kernel>` class supports building packages for multiple kernels. | 192 | - The :ref:`ref-classes-kernel` class supports building packages for multiple kernels. |
193 | If your kernel recipe or ``.bbappend`` file mentions packaging at | 193 | If your kernel recipe or ``.bbappend`` file mentions packaging at |
194 | all, you should replace references to the kernel in package names | 194 | all, you should replace references to the kernel in package names |
195 | with ``${KERNEL_PACKAGE_NAME}``. For example, if you disable | 195 | with ``${KERNEL_PACKAGE_NAME}``. For example, if you disable |
@@ -197,7 +197,7 @@ The following are additional changes: | |||
197 | ``RDEPENDS_kernel-base = ""`` you can avoid warnings using | 197 | ``RDEPENDS_kernel-base = ""`` you can avoid warnings using |
198 | ``RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""`` instead. | 198 | ``RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""`` instead. |
199 | 199 | ||
200 | - The :ref:`buildhistory <ref-classes-buildhistory>` class commits changes to the repository by | 200 | - The :ref:`ref-classes-buildhistory` class commits changes to the repository by |
201 | default so you no longer need to set ``BUILDHISTORY_COMMIT = "1"``. | 201 | default so you no longer need to set ``BUILDHISTORY_COMMIT = "1"``. |
202 | If you want to disable commits you need to set | 202 | If you want to disable commits you need to set |
203 | ``BUILDHISTORY_COMMIT = "0"`` in your configuration. | 203 | ``BUILDHISTORY_COMMIT = "0"`` in your configuration. |
@@ -209,12 +209,12 @@ The following are additional changes: | |||
209 | maintains a full-featured BSP in the ``meta-ti`` layer. This rename | 209 | maintains a full-featured BSP in the ``meta-ti`` layer. This rename |
210 | avoids the previous name clash that existed between the two BSPs. | 210 | avoids the previous name clash that existed between the two BSPs. |
211 | 211 | ||
212 | - The :ref:`update-alternatives <ref-classes-update-alternatives>` class no longer works with SysV ``init`` | 212 | - The :ref:`ref-classes-update-alternatives` class no longer works with SysV ``init`` |
213 | scripts because this usage has been problematic. Also, the | 213 | scripts because this usage has been problematic. Also, the |
214 | ``sysklogd`` recipe no longer uses ``update-alternatives`` because it | 214 | ``sysklogd`` recipe no longer uses ``update-alternatives`` because it |
215 | is incompatible with other implementations. | 215 | is incompatible with other implementations. |
216 | 216 | ||
217 | - By default, the :ref:`cmake <ref-classes-cmake>` class uses | 217 | - By default, the :ref:`ref-classes-cmake` class uses |
218 | ``ninja`` instead of ``make`` for building. This improves build | 218 | ``ninja`` instead of ``make`` for building. This improves build |
219 | performance. If a recipe is broken with ``ninja``, then the recipe | 219 | performance. If a recipe is broken with ``ninja``, then the recipe |
220 | can set ``OECMAKE_GENERATOR = "Unix Makefiles"`` to change back to | 220 | can set ``OECMAKE_GENERATOR = "Unix Makefiles"`` to change back to |
diff --git a/documentation/migration-guides/migration-2.6.rst b/documentation/migration-guides/migration-2.6.rst index 356f720850..477714b489 100644 --- a/documentation/migration-guides/migration-2.6.rst +++ b/documentation/migration-guides/migration-2.6.rst | |||
@@ -128,10 +128,9 @@ missing from :term:`DEPENDS`). | |||
128 | 128 | ||
129 | .. note:: | 129 | .. note:: |
130 | 130 | ||
131 | This change affects classes beyond just the two mentioned (i.e. | 131 | This change affects classes beyond just the two mentioned (i.e. ``distutils`` |
132 | ``distutils`` and ``distutils3``). Any recipe that inherits ``distutils*`` | 132 | and ``distutils3``). Any recipe that inherits ``distutils*`` classes are |
133 | classes are affected. For example, the ``setuptools`` and | 133 | affected. For example, the ``setuptools`` and :ref:`ref-classes-setuptools3` |
134 | :ref:`setuptools3 <ref-classes-setuptools3>` | ||
135 | recipes are affected since they inherit the ``distutils*`` classes. | 134 | recipes are affected since they inherit the ``distutils*`` classes. |
136 | 135 | ||
137 | Fetching these types of dependencies that are not provided in the | 136 | Fetching these types of dependencies that are not provided in the |
@@ -315,12 +314,11 @@ This section provides information about automatic testing changes: | |||
315 | exists and has been replaced by the | 314 | exists and has been replaced by the |
316 | :term:`TESTIMAGE_AUTO` variable. | 315 | :term:`TESTIMAGE_AUTO` variable. |
317 | 316 | ||
318 | - Inheriting the :ref:`testimage <ref-classes-testimage>` and | 317 | - Inheriting the :ref:`ref-classes-testimage` and :ref:`ref-classes-testsdk` |
319 | :ref:`testsdk <ref-classes-testsdk>` classes: best practices now dictate | 318 | classes: best practices now dictate that you use the :term:`IMAGE_CLASSES` |
320 | that you use the :term:`IMAGE_CLASSES` variable rather than the | 319 | variable rather than the :term:`INHERIT` variable when you inherit the |
321 | :term:`INHERIT` variable when you inherit the | 320 | :ref:`ref-classes-testimage` and :ref:`ref-classes-testsdk` classes used |
322 | :ref:`testimage <ref-classes-testimage>` and | 321 | for automatic testing. |
323 | :ref:`testsdk <ref-classes-testsdk>` classes used for automatic testing. | ||
324 | 322 | ||
325 | .. _migration-2.6-openssl-changes: | 323 | .. _migration-2.6-openssl-changes: |
326 | 324 | ||
diff --git a/documentation/migration-guides/migration-2.7.rst b/documentation/migration-guides/migration-2.7.rst index 6b17ceb90b..c49d2f05d2 100644 --- a/documentation/migration-guides/migration-2.7.rst +++ b/documentation/migration-guides/migration-2.7.rst | |||
@@ -174,8 +174,7 @@ The following miscellaneous changes occurred: | |||
174 | - ``base/pixbufcache``: Obsolete ``sstatecompletions`` code has been | 174 | - ``base/pixbufcache``: Obsolete ``sstatecompletions`` code has been |
175 | removed. | 175 | removed. |
176 | 176 | ||
177 | - :ref:`native <ref-classes-native>` class: | 177 | - :ref:`ref-classes-native` class: :term:`RDEPENDS` handling has been enabled. |
178 | :term:`RDEPENDS` handling has been enabled. | ||
179 | 178 | ||
180 | - ``inetutils``: This recipe has rsh disabled. | 179 | - ``inetutils``: This recipe has rsh disabled. |
181 | 180 | ||
diff --git a/documentation/migration-guides/migration-3.0.rst b/documentation/migration-guides/migration-3.0.rst index 5ecfe2d54a..8e7a58e74d 100644 --- a/documentation/migration-guides/migration-3.0.rst +++ b/documentation/migration-guides/migration-3.0.rst | |||
@@ -49,7 +49,7 @@ The following recipes have been removed. | |||
49 | - ``core-image-lsb-sdk``: Part of removed LSB support. | 49 | - ``core-image-lsb-sdk``: Part of removed LSB support. |
50 | 50 | ||
51 | - ``cve-check-tool``: Functionally replaced by the ``cve-update-db`` | 51 | - ``cve-check-tool``: Functionally replaced by the ``cve-update-db`` |
52 | recipe and :ref:`cve-check <ref-classes-cve-check>` class. | 52 | recipe and :ref:`ref-classes-cve-check` class. |
53 | 53 | ||
54 | - ``eglinfo``: No longer maintained. ``eglinfo`` from ``mesa-demos`` is | 54 | - ``eglinfo``: No longer maintained. ``eglinfo`` from ``mesa-demos`` is |
55 | an adequate and maintained alternative. | 55 | an adequate and maintained alternative. |
@@ -144,7 +144,7 @@ CVE Checking | |||
144 | ------------ | 144 | ------------ |
145 | 145 | ||
146 | ``cve-check-tool`` has been functionally replaced by a new | 146 | ``cve-check-tool`` has been functionally replaced by a new |
147 | ``cve-update-db`` recipe and functionality built into the :ref:`cve-check <ref-classes-cve-check>` | 147 | ``cve-update-db`` recipe and functionality built into the :ref:`ref-classes-cve-check` |
148 | class. The result uses NVD JSON data feeds rather than the deprecated | 148 | class. The result uses NVD JSON data feeds rather than the deprecated |
149 | XML feeds that ``cve-check-tool`` was using, supports CVSSv3 scoring, | 149 | XML feeds that ``cve-check-tool`` was using, supports CVSSv3 scoring, |
150 | and makes other improvements. | 150 | and makes other improvements. |
@@ -287,7 +287,7 @@ The following miscellaneous changes have occurred. | |||
287 | :term:`NATIVELSBSTRING` to use all lowercase | 287 | :term:`NATIVELSBSTRING` to use all lowercase |
288 | characters even if it does not contain a version number. This change | 288 | characters even if it does not contain a version number. This change |
289 | is necessary only if you are not using | 289 | is necessary only if you are not using |
290 | :ref:`uninative <ref-classes-uninative>` and :term:`SANITY_TESTED_DISTROS`. | 290 | :ref:`ref-classes-uninative` and :term:`SANITY_TESTED_DISTROS`. |
291 | 291 | ||
292 | - In the ``base-files`` recipe, writing the hostname into | 292 | - In the ``base-files`` recipe, writing the hostname into |
293 | ``/etc/hosts`` and ``/etc/hostname`` is now done within the main | 293 | ``/etc/hosts`` and ``/etc/hostname`` is now done within the main |
diff --git a/documentation/migration-guides/migration-3.1.rst b/documentation/migration-guides/migration-3.1.rst index cbad40112b..fdb959c4af 100644 --- a/documentation/migration-guides/migration-3.1.rst +++ b/documentation/migration-guides/migration-3.1.rst | |||
@@ -127,7 +127,7 @@ renamed to ``features_check``; the ``distro_features_check`` class still | |||
127 | exists but generates a warning and redirects to the new class. In | 127 | exists but generates a warning and redirects to the new class. In |
128 | preparation for a future removal of the old class it is recommended that | 128 | preparation for a future removal of the old class it is recommended that |
129 | you update recipes currently inheriting ``distro_features_check`` to | 129 | you update recipes currently inheriting ``distro_features_check`` to |
130 | inherit :ref:`features_check <ref-classes-features_check>` instead. | 130 | inherit :ref:`ref-classes-features_check` instead. |
131 | 131 | ||
132 | .. _migration-3.1-removed-classes: | 132 | .. _migration-3.1-removed-classes: |
133 | 133 | ||
@@ -240,10 +240,10 @@ Warnings will now be shown at :ref:`ref-tasks-package_qa` time in the following | |||
240 | circumstances: | 240 | circumstances: |
241 | 241 | ||
242 | - A recipe installs ``.desktop`` files containing ``MimeType`` keys but | 242 | - A recipe installs ``.desktop`` files containing ``MimeType`` keys but |
243 | does not inherit the new :ref:`mime-xdg <ref-classes-mime-xdg>` class | 243 | does not inherit the new :ref:`ref-classes-mime-xdg` class |
244 | 244 | ||
245 | - A recipe installs ``.xml`` files into ``${datadir}/mime/packages`` | 245 | - A recipe installs ``.xml`` files into ``${datadir}/mime/packages`` |
246 | but does not inherit the :ref:`mime <ref-classes-mime>` class | 246 | but does not inherit the :ref:`ref-classes-mime` class |
247 | 247 | ||
248 | .. _migration-3.1-x86-live-wic: | 248 | .. _migration-3.1-x86-live-wic: |
249 | 249 | ||
diff --git a/documentation/migration-guides/migration-3.2.rst b/documentation/migration-guides/migration-3.2.rst index b53f2b7802..c538df04d2 100644 --- a/documentation/migration-guides/migration-3.2.rst +++ b/documentation/migration-guides/migration-3.2.rst | |||
@@ -177,13 +177,23 @@ errors: | |||
177 | 177 | ||
178 | In addition, the following new checks were added and default to triggering an error: | 178 | In addition, the following new checks were added and default to triggering an error: |
179 | 179 | ||
180 | - :ref:`shebang-size <qa-check-shebang-size>`: Check for shebang (#!) lines longer than 128 characters, which can give an error at runtime depending on the operating system. | 180 | - :ref:`shebang-size <qa-check-shebang-size>`: Check for shebang (#!) lines |
181 | longer than 128 characters, which can give an error at runtime depending on | ||
182 | the operating system. | ||
181 | 183 | ||
182 | - :ref:`unhandled-features-check <qa-check-unhandled-features-check>`: Check if any of the variables supported by the :ref:`features_check <ref-classes-features_check>` class is set while not inheriting the class itself. | 184 | - :ref:`unhandled-features-check <qa-check-unhandled-features-check>`: Check |
185 | if any of the variables supported by the :ref:`ref-classes-features_check` | ||
186 | class is set while not inheriting the class itself. | ||
183 | 187 | ||
184 | - :ref:`missing-update-alternatives <qa-check-missing-update-alternatives>`: Check if the recipe sets the :term:`ALTERNATIVE` variable for any of its packages, and does not inherit the :ref:`update-alternatives <ref-classes-update-alternatives>` class. | 188 | - :ref:`missing-update-alternatives <qa-check-missing-update-alternatives>`: |
189 | Check if the recipe sets the :term:`ALTERNATIVE` variable for any of its | ||
190 | packages, and does not inherit the :ref:`ref-classes-update-alternatives` | ||
191 | class. | ||
185 | 192 | ||
186 | - A trailing slash or duplicated slashes in the value of :term:`S` or :term:`B` will now trigger a warning so that they can be removed and path comparisons can be more reliable --- remove any instances of these in your recipes if the warning is displayed. | 193 | - A trailing slash or duplicated slashes in the value of :term:`S` or :term:`B` |
194 | will now trigger a warning so that they can be removed and path comparisons | ||
195 | can be more reliable --- remove any instances of these in your recipes if the | ||
196 | warning is displayed. | ||
187 | 197 | ||
188 | 198 | ||
189 | .. _migration-3.2-src-uri-file-globbing: | 199 | .. _migration-3.2-src-uri-file-globbing: |
@@ -209,9 +219,18 @@ files into a subdirectory and reference that instead. | |||
209 | deploy class now cleans ``DEPLOYDIR`` before ``do_deploy`` | 219 | deploy class now cleans ``DEPLOYDIR`` before ``do_deploy`` |
210 | ---------------------------------------------------------- | 220 | ---------------------------------------------------------- |
211 | 221 | ||
212 | :ref:`ref-tasks-deploy` as implemented in the :ref:`deploy <ref-classes-deploy>` class now cleans up ${:term:`DEPLOYDIR`} before running, just as :ref:`ref-tasks-install` cleans up ${:term:`D`} before running. This reduces the risk of :term:`DEPLOYDIR` being accidentally contaminated by files from previous runs, possibly even with different config, in case of incremental builds. | 222 | :ref:`ref-tasks-deploy` as implemented in the :ref:`ref-classes-deploy` class |
223 | now cleans up ${:term:`DEPLOYDIR`} before running, just as | ||
224 | :ref:`ref-tasks-install` cleans up ${:term:`D`} before running. This reduces | ||
225 | the risk of :term:`DEPLOYDIR` being accidentally contaminated by files from | ||
226 | previous runs, possibly even with different config, in case of incremental | ||
227 | builds. | ||
213 | 228 | ||
214 | Most recipes and classes that inherit the :ref:`deploy <ref-classes-deploy>` class or interact with :ref:`ref-tasks-deploy` are unlikely to be affected by this unless they add ``prefuncs`` to :ref:`ref-tasks-deploy` *which also* put files into ``${DEPLOYDIR}`` --- these should be refactored to use ``do_deploy_prepend`` instead. | 229 | Most recipes and classes that inherit the :ref:`ref-classes-deploy` class or |
230 | interact with :ref:`ref-tasks-deploy` are unlikely to be affected by this | ||
231 | unless they add ``prefuncs`` to :ref:`ref-tasks-deploy` *which also* put files | ||
232 | into ``${DEPLOYDIR}`` --- these should be refactored to use | ||
233 | ``do_deploy_prepend`` instead. | ||
215 | 234 | ||
216 | 235 | ||
217 | .. _migration-3.2-nativesdk-sdk-provides-dummy: | 236 | .. _migration-3.2-nativesdk-sdk-provides-dummy: |
@@ -219,7 +238,7 @@ Most recipes and classes that inherit the :ref:`deploy <ref-classes-deploy>` cla | |||
219 | Custom SDK / SDK-style recipes need to include ``nativesdk-sdk-provides-dummy`` | 238 | Custom SDK / SDK-style recipes need to include ``nativesdk-sdk-provides-dummy`` |
220 | ------------------------------------------------------------------------------- | 239 | ------------------------------------------------------------------------------- |
221 | 240 | ||
222 | All :ref:`nativesdk <ref-classes-nativesdk>` packages require ``/bin/sh`` due | 241 | All :ref:`ref-classes-nativesdk` packages require ``/bin/sh`` due |
223 | to their postinstall scriptlets, thus this package has to be dummy-provided | 242 | to their postinstall scriptlets, thus this package has to be dummy-provided |
224 | within the SDK and ``nativesdk-sdk-provides-dummy`` now does this. If you have | 243 | within the SDK and ``nativesdk-sdk-provides-dummy`` now does this. If you have |
225 | a custom SDK recipe (or your own SDK-style recipe similar to e.g. | 244 | a custom SDK recipe (or your own SDK-style recipe similar to e.g. |
diff --git a/documentation/migration-guides/migration-3.3.rst b/documentation/migration-guides/migration-3.3.rst index 16d5e2a3ee..d1e589d7b4 100644 --- a/documentation/migration-guides/migration-3.3.rst +++ b/documentation/migration-guides/migration-3.3.rst | |||
@@ -63,13 +63,13 @@ need to update those. | |||
63 | New ``python3targetconfig`` class | 63 | New ``python3targetconfig`` class |
64 | --------------------------------- | 64 | --------------------------------- |
65 | 65 | ||
66 | A new :ref:`python3targetconfig <ref-classes-python3targetconfig>` class has | 66 | A new :ref:`ref-classes-python3targetconfig` class has |
67 | been created for situations where you would previously have inherited the | 67 | been created for situations where you would previously have inherited the |
68 | :ref:`python3native <ref-classes-python3native>` class but need access to | 68 | :ref:`ref-classes-python3native` class but need access to |
69 | target configuration data (such as correct installation directories). Recipes | 69 | target configuration data (such as correct installation directories). Recipes |
70 | where this situation applies should be changed to inherit | 70 | where this situation applies should be changed to inherit |
71 | :ref:`python3targetconfig <ref-classes-python3targetconfig>` instead of | 71 | :ref:`ref-classes-python3targetconfig` instead of |
72 | :ref:`python3native <ref-classes-python3native>`. This also adds a dependency | 72 | :ref:`ref-classes-python3native`. This also adds a dependency |
73 | on target ``python3``, so it should only be used where appropriate in order to | 73 | on target ``python3``, so it should only be used where appropriate in order to |
74 | avoid unnecessarily lengthening builds. | 74 | avoid unnecessarily lengthening builds. |
75 | 75 | ||
@@ -99,11 +99,10 @@ variable so that recipes can specify it explicitly, for example:: | |||
99 | S = "${WORKDIR}/git" | 99 | S = "${WORKDIR}/git" |
100 | DISTUTILS_SETUP_PATH = "${S}/python/pythonmodule" | 100 | DISTUTILS_SETUP_PATH = "${S}/python/pythonmodule" |
101 | 101 | ||
102 | Recipes that inherit from ``distutils3`` (or | 102 | Recipes that inherit from ``distutils3`` (or :ref:`ref-classes-setuptools3` |
103 | :ref:`setuptools3 <ref-classes-setuptools3>` which itself inherits | 103 | which itself inherits ``distutils3``) that also set :term:`S` to point to a |
104 | ``distutils3``) that also set :term:`S` to point to a Python module within a | 104 | Python module within a subdirectory in the aforementioned manner should be |
105 | subdirectory in the aforementioned manner should be changed to set | 105 | changed to set ``DISTUTILS_SETUP_PATH`` instead. |
106 | ``DISTUTILS_SETUP_PATH`` instead. | ||
107 | 106 | ||
108 | 107 | ||
109 | .. _migration-3.3-bitbake: | 108 | .. _migration-3.3-bitbake: |
diff --git a/documentation/migration-guides/migration-3.4.rst b/documentation/migration-guides/migration-3.4.rst index 88238091a1..076c589c8c 100644 --- a/documentation/migration-guides/migration-3.4.rst +++ b/documentation/migration-guides/migration-3.4.rst | |||
@@ -126,7 +126,7 @@ Removed classes | |||
126 | - ``image-mklibs``: not actively tested and upstream mklibs still | 126 | - ``image-mklibs``: not actively tested and upstream mklibs still |
127 | requires Python 2 | 127 | requires Python 2 |
128 | - ``meta``: no longer useful. Recipes that need to skip installing | 128 | - ``meta``: no longer useful. Recipes that need to skip installing |
129 | packages should inherit :ref:`nopackages <ref-classes-nopackages>` instead. | 129 | packages should inherit :ref:`ref-classes-nopackages` instead. |
130 | 130 | ||
131 | Prelinking disabled by default | 131 | Prelinking disabled by default |
132 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | 132 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
@@ -259,7 +259,7 @@ Miscellaneous | |||
259 | instead. | 259 | instead. |
260 | 260 | ||
261 | - The obsolete ``oe_machinstall`` function previously provided in the | 261 | - The obsolete ``oe_machinstall`` function previously provided in the |
262 | :ref:`utils <ref-classes-utils>` class has been removed. For | 262 | :ref:`ref-classes-utils` class has been removed. For |
263 | machine-specific installation it is recommended that you use the | 263 | machine-specific installation it is recommended that you use the |
264 | built-in override support in the fetcher or overrides in general | 264 | built-in override support in the fetcher or overrides in general |
265 | instead. | 265 | instead. |
diff --git a/documentation/migration-guides/migration-4.0.rst b/documentation/migration-guides/migration-4.0.rst index dd840f2bb3..3106498404 100644 --- a/documentation/migration-guides/migration-4.0.rst +++ b/documentation/migration-guides/migration-4.0.rst | |||
@@ -119,7 +119,7 @@ License changes | |||
119 | - The ``AVAILABLE_LICENSES`` variable has been removed. This variable was a performance | 119 | - The ``AVAILABLE_LICENSES`` variable has been removed. This variable was a performance |
120 | liability and is highly dependent on which layers are added to the configuration, | 120 | liability and is highly dependent on which layers are added to the configuration, |
121 | which can cause signature issues for users. In addition the ``available_licenses()`` | 121 | which can cause signature issues for users. In addition the ``available_licenses()`` |
122 | function has been removed from the :ref:`license <ref-classes-license>` class as | 122 | function has been removed from the :ref:`ref-classes-license` class as |
123 | it is no longer needed. | 123 | it is no longer needed. |
124 | 124 | ||
125 | Removed recipes | 125 | Removed recipes |
@@ -143,15 +143,14 @@ Python changes | |||
143 | 143 | ||
144 | - The Python package build process is now based on `wheels <https://pythonwheels.com/>`__. | 144 | - The Python package build process is now based on `wheels <https://pythonwheels.com/>`__. |
145 | Here are the new Python packaging classes that should be used: | 145 | Here are the new Python packaging classes that should be used: |
146 | :ref:`python_flit_core <ref-classes-python_flit_core>`, | 146 | :ref:`ref-classes-python_flit_core`, :ref:`ref-classes-python_setuptools_build_meta` |
147 | :ref:`python_setuptools_build_meta <ref-classes-python_setuptools_build_meta>` | 147 | and :ref:`ref-classes-python_poetry_core`. |
148 | and :ref:`python_poetry_core <ref-classes-python_poetry_core>`. | ||
149 | 148 | ||
150 | - The :ref:`setuptools3 <ref-classes-setuptools3>` class :ref:`ref-tasks-install` task now | 149 | - The :ref:`ref-classes-setuptools3` class :ref:`ref-tasks-install` task now |
151 | installs the ``wheel`` binary archive. In current versions of ``setuptools`` the | 150 | installs the ``wheel`` binary archive. In current versions of ``setuptools`` the |
152 | legacy ``setup.py install`` method is deprecated. If the ``setup.py`` cannot be used | 151 | legacy ``setup.py install`` method is deprecated. If the ``setup.py`` cannot be used |
153 | with wheels, for example it creates files outside of the Python module or standard | 152 | with wheels, for example it creates files outside of the Python module or standard |
154 | entry points, then :ref:`setuptools3_legacy <ref-classes-setuptools3_legacy>` should | 153 | entry points, then :ref:`ref-classes-setuptools3_legacy` should |
155 | be used instead. | 154 | be used instead. |
156 | 155 | ||
157 | Prelink removed | 156 | Prelink removed |
@@ -173,7 +172,7 @@ Reproducible as standard | |||
173 | 172 | ||
174 | Reproducibility is now considered as standard functionality, thus the | 173 | Reproducibility is now considered as standard functionality, thus the |
175 | ``reproducible`` class has been removed and its previous contents merged into the | 174 | ``reproducible`` class has been removed and its previous contents merged into the |
176 | :ref:`base <ref-classes-base>` class. If you have references in your configuration to | 175 | :ref:`ref-classes-base` class. If you have references in your configuration to |
177 | ``reproducible`` in :term:`INHERIT`, :term:`USER_CLASSES` etc. then they should be | 176 | ``reproducible`` in :term:`INHERIT`, :term:`USER_CLASSES` etc. then they should be |
178 | removed. | 177 | removed. |
179 | 178 | ||
@@ -215,15 +214,15 @@ Miscellaneous changes | |||
215 | ~~~~~~~~~~~~~~~~~~~~~ | 214 | ~~~~~~~~~~~~~~~~~~~~~ |
216 | 215 | ||
217 | - ``blacklist.bbclass`` is removed and the functionality moved to the | 216 | - ``blacklist.bbclass`` is removed and the functionality moved to the |
218 | :ref:`base <ref-classes-base>` class with a more descriptive | 217 | :ref:`ref-classes-base` class with a more descriptive |
219 | ``varflag`` variable named :term:`SKIP_RECIPE` which will use the `bb.parse.SkipRecipe()` | 218 | ``varflag`` variable named :term:`SKIP_RECIPE` which will use the `bb.parse.SkipRecipe()` |
220 | function. The usage remains the same, for example:: | 219 | function. The usage remains the same, for example:: |
221 | 220 | ||
222 | SKIP_RECIPE[my-recipe] = "Reason for skipping recipe" | 221 | SKIP_RECIPE[my-recipe] = "Reason for skipping recipe" |
223 | 222 | ||
224 | - :ref:`allarch <ref-classes-allarch>` packagegroups can no longer depend on packages | 223 | - :ref:`ref-classes-allarch` packagegroups can no longer depend on packages |
225 | which use :term:`PKG` renaming such as :ref:`ref-classes-debian`. Such packagegroups | 224 | which use :term:`PKG` renaming such as :ref:`ref-classes-debian`. Such packagegroups |
226 | recipes should be changed to avoid inheriting :ref:`allarch <ref-classes-allarch>`. | 225 | recipes should be changed to avoid inheriting :ref:`ref-classes-allarch`. |
227 | 226 | ||
228 | - The ``lnr`` script has been removed. ``lnr`` implemented the same behaviour as `ln --relative --symbolic`, | 227 | - The ``lnr`` script has been removed. ``lnr`` implemented the same behaviour as `ln --relative --symbolic`, |
229 | since at the time of creation `--relative` was only available in coreutils 8.16 | 228 | since at the time of creation `--relative` was only available in coreutils 8.16 |
@@ -232,7 +231,7 @@ Miscellaneous changes | |||
232 | any calls to ``lnr`` in your recipes or classes, they should be replaced with | 231 | any calls to ``lnr`` in your recipes or classes, they should be replaced with |
233 | `ln --relative --symbolic` or `ln -rs` if you prefer the short version. | 232 | `ln --relative --symbolic` or `ln -rs` if you prefer the short version. |
234 | 233 | ||
235 | - The ``package_qa_handle_error()`` function formerly in the :ref:`insane <ref-classes-insane>` | 234 | - The ``package_qa_handle_error()`` function formerly in the :ref:`ref-classes-insane` |
236 | class has been moved and renamed - if you have any references in your own custom | 235 | class has been moved and renamed - if you have any references in your own custom |
237 | classes they should be changed to ``oe.qa.handle_error()``. | 236 | classes they should be changed to ``oe.qa.handle_error()``. |
238 | 237 | ||
diff --git a/documentation/migration-guides/migration-4.1.rst b/documentation/migration-guides/migration-4.1.rst index 8b9db40ddc..86721b9873 100644 --- a/documentation/migration-guides/migration-4.1.rst +++ b/documentation/migration-guides/migration-4.1.rst | |||
@@ -92,7 +92,7 @@ now cause an error:: | |||
92 | 92 | ||
93 | INHERIT += "testimage" | 93 | INHERIT += "testimage" |
94 | 94 | ||
95 | Since :ref:`testimage <ref-classes-testimage>` is a class intended solely to | 95 | Since :ref:`ref-classes-testimage` is a class intended solely to |
96 | affect image recipes, this would be correctly specified as:: | 96 | affect image recipes, this would be correctly specified as:: |
97 | 97 | ||
98 | IMAGE_CLASSES += "testimage" | 98 | IMAGE_CLASSES += "testimage" |
@@ -154,16 +154,16 @@ Miscellaneous changes | |||
154 | you can set :term:`WATCHDOG_TIMEOUT` to the desired timeout in seconds. Note | 154 | you can set :term:`WATCHDOG_TIMEOUT` to the desired timeout in seconds. Note |
155 | that the same :term:`WATCHDOG_TIMEOUT` variable also specifies the timeout used | 155 | that the same :term:`WATCHDOG_TIMEOUT` variable also specifies the timeout used |
156 | for the ``watchdog`` tool (if that is being built). | 156 | for the ``watchdog`` tool (if that is being built). |
157 | - The :ref:`image-buildinfo <ref-classes-image-buildinfo>` class now writes to | 157 | - The :ref:`ref-classes-image-buildinfo` class now writes to |
158 | ``${sysconfdir}/buildinfo`` instead of ``${sysconfdir}/build`` by default (i.e. | 158 | ``${sysconfdir}/buildinfo`` instead of ``${sysconfdir}/build`` by default (i.e. |
159 | the default value of :term:`IMAGE_BUILDINFO_FILE` has been changed). If you have | 159 | the default value of :term:`IMAGE_BUILDINFO_FILE` has been changed). If you have |
160 | code that reads this from images at build or runtime you will need to update it | 160 | code that reads this from images at build or runtime you will need to update it |
161 | or specify your own value for :term:`IMAGE_BUILDINFO_FILE`. | 161 | or specify your own value for :term:`IMAGE_BUILDINFO_FILE`. |
162 | - In the :ref:`archiver <ref-classes-archiver>` class, the default | 162 | - In the :ref:`ref-classes-archiver` class, the default |
163 | ``ARCHIVER_OUTDIR`` value no longer includes the :term:`MACHINE` value in order | 163 | ``ARCHIVER_OUTDIR`` value no longer includes the :term:`MACHINE` value in order |
164 | to avoid the archive task running multiple times in a multiconfig setup. If you | 164 | to avoid the archive task running multiple times in a multiconfig setup. If you |
165 | have custom code that does something with the files archived by the | 165 | have custom code that does something with the files archived by the |
166 | :ref:`archiver <ref-classes-archiver>` class then you may need to adjust it to | 166 | :ref:`ref-classes-archiver` class then you may need to adjust it to |
167 | the new structure. | 167 | the new structure. |
168 | - If you are not using `systemd` then udev is now configured to use labels | 168 | - If you are not using `systemd` then udev is now configured to use labels |
169 | (``LABEL`` or ``PARTLABEL``) to set the mount point for the device. For example:: | 169 | (``LABEL`` or ``PARTLABEL``) to set the mount point for the device. For example:: |
@@ -194,7 +194,7 @@ Miscellaneous changes | |||
194 | :term:`PACKAGECONFIG`. If you are customising this file you will need to | 194 | :term:`PACKAGECONFIG`. If you are customising this file you will need to |
195 | update your customisations. | 195 | update your customisations. |
196 | - With the introduction of picobuild in | 196 | - With the introduction of picobuild in |
197 | :ref:`python_pep517 <ref-classes-python_pep517>`, The ``PEP517_BUILD_API`` | 197 | :ref:`ref-classes-python_pep517`, The ``PEP517_BUILD_API`` |
198 | variable is no longer supported. If you have any references to this variable | 198 | variable is no longer supported. If you have any references to this variable |
199 | you should remove them. | 199 | you should remove them. |
200 | 200 | ||
diff --git a/documentation/migration-guides/migration-general.rst b/documentation/migration-guides/migration-general.rst index c3b8a785db..1820f5cfd8 100644 --- a/documentation/migration-guides/migration-general.rst +++ b/documentation/migration-guides/migration-general.rst | |||
@@ -76,24 +76,24 @@ any new Yocto Project release. | |||
76 | 76 | ||
77 | - *Checking Image / SDK Changes*: | 77 | - *Checking Image / SDK Changes*: |
78 | 78 | ||
79 | The :ref:`buildhistory <ref-classes-buildhistory>` class can be used | 79 | The :ref:`ref-classes-buildhistory` class can be used |
80 | if you wish to check the impact of changes to images / SDKs across | 80 | if you wish to check the impact of changes to images / SDKs across |
81 | the migration (e.g. added/removed packages, added/removed files, size | 81 | the migration (e.g. added/removed packages, added/removed files, size |
82 | changes etc.). To do this, follow these steps: | 82 | changes etc.). To do this, follow these steps: |
83 | 83 | ||
84 | #. Enable :ref:`buildhistory <ref-classes-buildhistory>` before the migration | 84 | #. Enable :ref:`ref-classes-buildhistory` before the migration |
85 | 85 | ||
86 | #. Run a pre-migration build | 86 | #. Run a pre-migration build |
87 | 87 | ||
88 | #. Capture the :ref:`buildhistory <ref-classes-buildhistory>` output (as | 88 | #. Capture the :ref:`ref-classes-buildhistory` output (as |
89 | specified by :term:`BUILDHISTORY_DIR`) and ensure it is preserved for | 89 | specified by :term:`BUILDHISTORY_DIR`) and ensure it is preserved for |
90 | subsequent builds. How you would do this depends on how you are running | 90 | subsequent builds. How you would do this depends on how you are running |
91 | your builds - if you are doing this all on one workstation in the same | 91 | your builds - if you are doing this all on one workstation in the same |
92 | :term:`Build Directory` you may not need to do anything other than not | 92 | :term:`Build Directory` you may not need to do anything other than not |
93 | deleting the :ref:`buildhistory <ref-classes-buildhistory>` output | 93 | deleting the :ref:`ref-classes-buildhistory` output |
94 | directory. For builds in a pipeline it may be more complicated. | 94 | directory. For builds in a pipeline it may be more complicated. |
95 | 95 | ||
96 | #. Set a tag in the :ref:`buildhistory <ref-classes-buildhistory>` output (which is a git repository) before | 96 | #. Set a tag in the :ref:`ref-classes-buildhistory` output (which is a git repository) before |
97 | migration, to make the commit from the pre-migration build easy to find | 97 | migration, to make the commit from the pre-migration build easy to find |
98 | as you may end up running multiple builds during the migration. | 98 | as you may end up running multiple builds during the migration. |
99 | 99 | ||
@@ -102,7 +102,7 @@ any new Yocto Project release. | |||
102 | #. Run a build | 102 | #. Run a build |
103 | 103 | ||
104 | #. Check the output changes between the previously set tag and HEAD in the | 104 | #. Check the output changes between the previously set tag and HEAD in the |
105 | :ref:`buildhistory <ref-classes-buildhistory>` output using ``git diff`` or ``buildhistory-diff``. | 105 | :ref:`ref-classes-buildhistory` output using ``git diff`` or ``buildhistory-diff``. |
106 | 106 | ||
107 | For more information on using :ref:`buildhistory <ref-classes-buildhistory>`, see | 107 | For more information on using :ref:`ref-classes-buildhistory`, see |
108 | :ref:`dev-manual/build-quality:maintaining build output quality`. | 108 | :ref:`dev-manual/build-quality:maintaining build output quality`. |
diff --git a/documentation/migration-guides/release-notes-3.4.rst b/documentation/migration-guides/release-notes-3.4.rst index 6b2b7eade6..d76bb004b1 100644 --- a/documentation/migration-guides/release-notes-3.4.rst +++ b/documentation/migration-guides/release-notes-3.4.rst | |||
@@ -9,7 +9,7 @@ New Features / Enhancements in 3.4 | |||
9 | - Linux kernel 5.14, glibc 2.34 and ~280 other recipe upgrades | 9 | - Linux kernel 5.14, glibc 2.34 and ~280 other recipe upgrades |
10 | - Switched override character to ':' (replacing '_') for more robust parsing and improved performance --- see the above migration guide for help | 10 | - Switched override character to ':' (replacing '_') for more robust parsing and improved performance --- see the above migration guide for help |
11 | - Rust integrated into core, providing rust support for cross-compilation and SDK | 11 | - Rust integrated into core, providing rust support for cross-compilation and SDK |
12 | - New :ref:`create-spdx <ref-classes-create-spdx>` class for creating SPDX SBoM documents | 12 | - New :ref:`ref-classes-create-spdx` class for creating SPDX SBoM documents |
13 | - New recipes: cargo, core-image-ptest-all, core-image-ptest-fast, core-image-weston-sdk, erofs-utils, gcompat, gi-docgen, libmicrohttpd, libseccomp, libstd-rs, perlcross, python3-markdown, python3-pyyaml, python3-smartypants, python3-typogrify, rust, rust-cross, rust-cross-canadian, rust-hello-world, rust-llvm, rust-tools-cross-canadian, rustfmt, xwayland | 13 | - New recipes: cargo, core-image-ptest-all, core-image-ptest-fast, core-image-weston-sdk, erofs-utils, gcompat, gi-docgen, libmicrohttpd, libseccomp, libstd-rs, perlcross, python3-markdown, python3-pyyaml, python3-smartypants, python3-typogrify, rust, rust-cross, rust-cross-canadian, rust-hello-world, rust-llvm, rust-tools-cross-canadian, rustfmt, xwayland |
14 | - Several optimisations to reduce unnecessary task dependencies for faster builds | 14 | - Several optimisations to reduce unnecessary task dependencies for faster builds |
15 | - seccomp integrated into core, with additional enabling for gnutls, systemd, qemu | 15 | - seccomp integrated into core, with additional enabling for gnutls, systemd, qemu |
@@ -71,7 +71,7 @@ New Features / Enhancements in 3.4 | |||
71 | 71 | ||
72 | - Enable :ref:`ref-tasks-populate_sdk` with multilibs | 72 | - Enable :ref:`ref-tasks-populate_sdk` with multilibs |
73 | - New ``SDKPATHINSTALL`` variable decouples default install path from | 73 | - New ``SDKPATHINSTALL`` variable decouples default install path from |
74 | built in path to avoid rebuilding :ref:`nativesdk <ref-classes-nativesdk>` | 74 | built in path to avoid rebuilding :ref:`ref-classes-nativesdk` |
75 | components on e.g. :term:`DISTRO_VERSION` changes | 75 | components on e.g. :term:`DISTRO_VERSION` changes |
76 | - eSDK: Error if trying to generate an eSDK from a multiconfig | 76 | - eSDK: Error if trying to generate an eSDK from a multiconfig |
77 | - eSDK: introduce :term:`TOOLCHAIN_HOST_TASK_ESDK` to be used in place of :term:`TOOLCHAIN_HOST_TASK` to add components to the host part of the eSDK | 77 | - eSDK: introduce :term:`TOOLCHAIN_HOST_TASK_ESDK` to be used in place of :term:`TOOLCHAIN_HOST_TASK` to add components to the host part of the eSDK |
diff --git a/documentation/migration-guides/release-notes-4.0.rst b/documentation/migration-guides/release-notes-4.0.rst index b1f89cf0a7..563113b4db 100644 --- a/documentation/migration-guides/release-notes-4.0.rst +++ b/documentation/migration-guides/release-notes-4.0.rst | |||
@@ -13,7 +13,7 @@ New Features / Enhancements in 4.0 | |||
13 | - Reproducibility: this release fixes the reproducibility issues with | 13 | - Reproducibility: this release fixes the reproducibility issues with |
14 | ``rust-llvm`` and ``golang``. Recipes in OpenEmbedded-Core are now fully | 14 | ``rust-llvm`` and ``golang``. Recipes in OpenEmbedded-Core are now fully |
15 | reproducible. Functionality previously in the optional "reproducible" | 15 | reproducible. Functionality previously in the optional "reproducible" |
16 | class has been merged into the :ref:`base <ref-classes-base>` class. | 16 | class has been merged into the :ref:`ref-classes-base` class. |
17 | 17 | ||
18 | - Network access is now disabled by default for tasks other than where it is expected to ensure build integrity (where host kernel supports it) | 18 | - Network access is now disabled by default for tasks other than where it is expected to ensure build integrity (where host kernel supports it) |
19 | 19 | ||
@@ -31,8 +31,7 @@ New Features / Enhancements in 4.0 | |||
31 | - The Python package build process is now based on `wheels <https://pythonwheels.com/>`__ | 31 | - The Python package build process is now based on `wheels <https://pythonwheels.com/>`__ |
32 | in line with the upstream direction. | 32 | in line with the upstream direction. |
33 | 33 | ||
34 | - New :ref:`overlayfs <ref-classes-overlayfs>` and | 34 | - New :ref:`ref-classes-overlayfs` and :ref:`ref-classes-overlayfs-etc` classes and |
35 | :ref:`overlayfs-etc <ref-classes-overlayfs-etc>` classes and | ||
36 | ``overlayroot`` support in the :term:`Initramfs` framework to make it easier to | 35 | ``overlayroot`` support in the :term:`Initramfs` framework to make it easier to |
37 | overlay read-only filesystems (for example) with | 36 | overlay read-only filesystems (for example) with |
38 | :wikipedia:`OverlayFS <OverlayFS>`. | 37 | :wikipedia:`OverlayFS <OverlayFS>`. |
@@ -218,7 +217,7 @@ New Features / Enhancements in 4.0 | |||
218 | - Ensure addition of patch-fuzz retriggers do_qa_patch | 217 | - Ensure addition of patch-fuzz retriggers do_qa_patch |
219 | - Added a sanity check for allarch packagegroups | 218 | - Added a sanity check for allarch packagegroups |
220 | 219 | ||
221 | - :ref:`create-spdx <ref-classes-create-spdx>` class improvements: | 220 | - :ref:`ref-classes-create-spdx` class improvements: |
222 | 221 | ||
223 | - Get SPDX-License-Identifier from source files | 222 | - Get SPDX-License-Identifier from source files |
224 | - Generate manifest also for SDKs | 223 | - Generate manifest also for SDKs |
@@ -238,9 +237,9 @@ New Features / Enhancements in 4.0 | |||
238 | 237 | ||
239 | - SDK-related enhancements: | 238 | - SDK-related enhancements: |
240 | 239 | ||
241 | - Extended recipes to :ref:`nativesdk <ref-classes-nativesdk>`: ``cargo``, | 240 | - Extended recipes to :ref:`ref-classes-nativesdk`: ``cargo``, |
242 | ``librsvg``, ``libstd-rs``, ``libva``, ``python3-docutil``, ``python3-packaging`` | 241 | ``librsvg``, ``libstd-rs``, ``libva``, ``python3-docutil``, ``python3-packaging`` |
243 | - Enabled :ref:`nativesdk <ref-classes-nativesdk>` recipes to find a correct version | 242 | - Enabled :ref:`ref-classes-nativesdk` recipes to find a correct version |
244 | of the rust cross compiler | 243 | of the rust cross compiler |
245 | - Support creating per-toolchain cmake file in SDK | 244 | - Support creating per-toolchain cmake file in SDK |
246 | 245 | ||
diff --git a/documentation/migration-guides/release-notes-4.1.rst b/documentation/migration-guides/release-notes-4.1.rst index 09eb6d8c06..cd48e202ab 100644 --- a/documentation/migration-guides/release-notes-4.1.rst +++ b/documentation/migration-guides/release-notes-4.1.rst | |||
@@ -30,7 +30,7 @@ New Features / Enhancements in 4.1 | |||
30 | - Support for building rust for the target | 30 | - Support for building rust for the target |
31 | - Significant SDK toolchain build optimisation | 31 | - Significant SDK toolchain build optimisation |
32 | - Support for building native components in the SDK | 32 | - Support for building native components in the SDK |
33 | - Support ``crate://`` fetcher with :ref:`externalsrc <ref-classes-externalsrc>` | 33 | - Support ``crate://`` fetcher with :ref:`ref-classes-externalsrc` |
34 | 34 | ||
35 | - New core recipes: | 35 | - New core recipes: |
36 | 36 | ||
@@ -52,7 +52,7 @@ New Features / Enhancements in 4.1 | |||
52 | - Added support for Ignored CVEs | 52 | - Added support for Ignored CVEs |
53 | - Enable recursive CVE checking also for ``do_populate_sdk`` | 53 | - Enable recursive CVE checking also for ``do_populate_sdk`` |
54 | - New :term:`CVE_CHECK_SHOW_WARNINGS` variable to disable unpatched CVE warning messages | 54 | - New :term:`CVE_CHECK_SHOW_WARNINGS` variable to disable unpatched CVE warning messages |
55 | - The :ref:`pypi <ref-classes-pypi>` class now defaults :term:`CVE_PRODUCT` from :term:`PYPI_PACKAGE` | 55 | - The :ref:`ref-classes-pypi` class now defaults :term:`CVE_PRODUCT` from :term:`PYPI_PACKAGE` |
56 | - Added current kernel CVEs to ignore list since we stay as close to the kernel stable releases as we can | 56 | - Added current kernel CVEs to ignore list since we stay as close to the kernel stable releases as we can |
57 | - Optimisations to avoid dependencies on fetching | 57 | - Optimisations to avoid dependencies on fetching |
58 | 58 | ||
@@ -60,9 +60,9 @@ New Features / Enhancements in 4.1 | |||
60 | - Dependency of -dev package on main package is now an :term:`RRECOMMENDS` and can be easily set via new :term:`DEV_PKG_DEPENDENCY` variable | 60 | - Dependency of -dev package on main package is now an :term:`RRECOMMENDS` and can be easily set via new :term:`DEV_PKG_DEPENDENCY` variable |
61 | 61 | ||
62 | - Support for CPU, I/O and memory pressure regulation in BitBake | 62 | - Support for CPU, I/O and memory pressure regulation in BitBake |
63 | - Pressure data gathering in :ref:`buildstats <ref-classes-buildstats>` and rendering in ``pybootchartgui`` | 63 | - Pressure data gathering in :ref:`ref-classes-buildstats` and rendering in ``pybootchartgui`` |
64 | 64 | ||
65 | - New Picobuild system for lightweight Python PEP-517 build support in the :ref:`python_pep517 <ref-classes-python_pep517>` class | 65 | - New Picobuild system for lightweight Python PEP-517 build support in the :ref:`ref-classes-python_pep517` class |
66 | 66 | ||
67 | - Many classes are now split into global and recipe contexts for better | 67 | - Many classes are now split into global and recipe contexts for better |
68 | validation. For more information, see | 68 | validation. For more information, see |
@@ -99,10 +99,10 @@ New Features / Enhancements in 4.1 | |||
99 | - SDK-related enhancements: | 99 | - SDK-related enhancements: |
100 | 100 | ||
101 | - :ref:`Support for using the regular build system as an SDK <sdk-manual/extensible:Setting up the Extensible SDK environment directly in a Yocto build>` | 101 | - :ref:`Support for using the regular build system as an SDK <sdk-manual/extensible:Setting up the Extensible SDK environment directly in a Yocto build>` |
102 | - :ref:`image-buildinfo <ref-classes-image-buildinfo>` class now also writes build information to SDKs | 102 | - :ref:`ref-classes-image-buildinfo` class now also writes build information to SDKs |
103 | - New :term:`SDK_TOOLCHAIN_LANGS` variable to control support of rust / go in SDK | 103 | - New :term:`SDK_TOOLCHAIN_LANGS` variable to control support of rust / go in SDK |
104 | - rust-llvm: enabled :ref:`nativesdk <ref-classes-nativesdk>` variant | 104 | - rust-llvm: enabled :ref:`ref-classes-nativesdk` variant |
105 | - python3-pluggy: enabled for :ref:`native <ref-classes-native>` / :ref:`nativesdk <ref-classes-nativesdk>` | 105 | - python3-pluggy: enabled for :ref:`ref-classes-native` / :ref:`ref-classes-nativesdk` |
106 | 106 | ||
107 | - QEMU/runqemu enhancements: | 107 | - QEMU/runqemu enhancements: |
108 | 108 | ||
@@ -115,11 +115,11 @@ New Features / Enhancements in 4.1 | |||
115 | - New variable :term:`UBOOT_MKIMAGE_KERNEL_TYPE` | 115 | - New variable :term:`UBOOT_MKIMAGE_KERNEL_TYPE` |
116 | - New variable :term:`FIT_PAD_ALG` to control FIT image padding algorithm | 116 | - New variable :term:`FIT_PAD_ALG` to control FIT image padding algorithm |
117 | - New :term:`KERNEL_DEPLOY_DEPEND` variable to allow disabling image dependency on deploying the kernel | 117 | - New :term:`KERNEL_DEPLOY_DEPEND` variable to allow disabling image dependency on deploying the kernel |
118 | - :ref:`image_types <ref-classes-image_types>`: isolate the write of UBI | 118 | - :ref:`ref-classes-image_types`: isolate the write of UBI |
119 | configuration to a ``write_ubi_config`` function that can be easily overridden | 119 | configuration to a ``write_ubi_config`` function that can be easily overridden |
120 | 120 | ||
121 | - openssh: add support for config snippet includes to ssh and sshd | 121 | - openssh: add support for config snippet includes to ssh and sshd |
122 | - :ref:`create-spdx <ref-classes-create-spdx>`: Add :term:`SPDX_PRETTY` option | 122 | - :ref:`ref-classes-create-spdx`: Add :term:`SPDX_PRETTY` option |
123 | - wpa-supplicant: build static library if not disabled via :term:`DISABLE_STATIC` | 123 | - wpa-supplicant: build static library if not disabled via :term:`DISABLE_STATIC` |
124 | - wpa-supplicant: package dynamic modules | 124 | - wpa-supplicant: package dynamic modules |
125 | - openssl: extract legacy provider module to a separate package | 125 | - openssl: extract legacy provider module to a separate package |
@@ -132,11 +132,11 @@ New Features / Enhancements in 4.1 | |||
132 | - systemd: systemd-systemctl: Support instance conf files during enable | 132 | - systemd: systemd-systemctl: Support instance conf files during enable |
133 | - weston.init: enable ``xwayland`` in weston.ini if ``x11`` is in :term:`DISTRO_FEATURES` | 133 | - weston.init: enable ``xwayland`` in weston.ini if ``x11`` is in :term:`DISTRO_FEATURES` |
134 | - New ``npm_registry`` Python module to enable caching with nodejs 16+ | 134 | - New ``npm_registry`` Python module to enable caching with nodejs 16+ |
135 | - :ref:`npm <ref-classes-npm>`: replaced ``npm pack`` call with ``tar czf`` for nodejs 16+ compatibility and improved ``do_configure`` performance | 135 | - :ref:`ref-classes-npm`: replaced ``npm pack`` call with ``tar czf`` for nodejs 16+ compatibility and improved ``do_configure`` performance |
136 | - Enabled :ref:`bin_package <ref-classes-bin-package>` class to work properly in the native case | 136 | - Enabled :ref:`ref-classes-bin-package` class to work properly in the native case |
137 | - Enabled :ref:`buildpaths <qa-check-buildpaths>` QA check as a warning by default | 137 | - Enabled :ref:`buildpaths <qa-check-buildpaths>` QA check as a warning by default |
138 | - New :term:`OVERLAYFS_ETC_EXPOSE_LOWER` to provide read-only access to the original ``/etc`` content with :ref:`overlayfs-etc <ref-classes-overlayfs-etc>` | 138 | - New :term:`OVERLAYFS_ETC_EXPOSE_LOWER` to provide read-only access to the original ``/etc`` content with :ref:`ref-classes-overlayfs-etc` |
139 | - New :term:`OVERLAYFS_QA_SKIP` variable to allow skipping check on :ref:`overlayfs <ref-classes-overlayfs>` mounts | 139 | - New :term:`OVERLAYFS_QA_SKIP` variable to allow skipping check on :ref:`ref-classes-overlayfs` mounts |
140 | - New :term:`PACKAGECONFIG` options for individual recipes: | 140 | - New :term:`PACKAGECONFIG` options for individual recipes: |
141 | 141 | ||
142 | - apr: xsi-strerror | 142 | - apr: xsi-strerror |
@@ -176,7 +176,7 @@ New Features / Enhancements in 4.1 | |||
176 | - The Python ``zoneinfo`` module is now split out to its own ``python3-zoneinfo`` package. | 176 | - The Python ``zoneinfo`` module is now split out to its own ``python3-zoneinfo`` package. |
177 | - busybox: added devmem 128-bit support | 177 | - busybox: added devmem 128-bit support |
178 | - vim: split xxd out into its own package | 178 | - vim: split xxd out into its own package |
179 | - New :ref:`github-releases <ref-classes-github-releases>` class to consolidate version checks for github-based packages | 179 | - New :ref:`ref-classes-github-releases` class to consolidate version checks for github-based packages |
180 | - ``devtool reset`` now preserves ``workspace/sources`` source trees in ``workspace/attic/sources/`` instead of leaving them in-place | 180 | - ``devtool reset`` now preserves ``workspace/sources`` source trees in ``workspace/attic/sources/`` instead of leaving them in-place |
181 | - scripts/patchreview: Add commit to stored json data | 181 | - scripts/patchreview: Add commit to stored json data |
182 | - scripts/patchreview: Make json output human parsable | 182 | - scripts/patchreview: Make json output human parsable |
@@ -204,7 +204,7 @@ Known Issues in 4.1 | |||
204 | :yocto_bugs:`bug 14626 </show_bug.cgi?id=14626>`, which also details the fix. | 204 | :yocto_bugs:`bug 14626 </show_bug.cgi?id=14626>`, which also details the fix. |
205 | 205 | ||
206 | - The change to :ref:`migration-4.1-classes-split` inadvertently moved the | 206 | - The change to :ref:`migration-4.1-classes-split` inadvertently moved the |
207 | :ref:`externalsrc <ref-classes-externalsrc>` class to ``meta/classes-recipe``, | 207 | :ref:`ref-classes-externalsrc` class to ``meta/classes-recipe``, |
208 | when it is not recipe-specific and can also be used in a global context. The | 208 | when it is not recipe-specific and can also be used in a global context. The |
209 | class will be moved back to ``meta/classes`` in the next point release. Filed | 209 | class will be moved back to ``meta/classes`` in the next point release. Filed |
210 | as :yocto_bugs:`bug 14940 </show_bug.cgi?id=14940>`. | 210 | as :yocto_bugs:`bug 14940 </show_bug.cgi?id=14940>`. |
diff --git a/documentation/overview-manual/concepts.rst b/documentation/overview-manual/concepts.rst index d2edfc3427..4cee4bb169 100644 --- a/documentation/overview-manual/concepts.rst +++ b/documentation/overview-manual/concepts.rst | |||
@@ -107,8 +107,7 @@ Classes | |||
107 | ------- | 107 | ------- |
108 | 108 | ||
109 | Class files (``.bbclass``) contain information that is useful to share | 109 | Class files (``.bbclass``) contain information that is useful to share |
110 | between recipes files. An example is the | 110 | between recipes files. An example is the :ref:`ref-classes-autotools` class, |
111 | :ref:`autotools <ref-classes-autotools>` class, | ||
112 | which contains common settings for any application that is built with | 111 | which contains common settings for any application that is built with |
113 | the :wikipedia:`GNU Autotools <GNU_Autotools>`. | 112 | the :wikipedia:`GNU Autotools <GNU_Autotools>`. |
114 | The ":ref:`ref-manual/classes:Classes`" chapter in the Yocto Project | 113 | The ":ref:`ref-manual/classes:Classes`" chapter in the Yocto Project |
@@ -561,11 +560,11 @@ reside somewhere local to a project --- perhaps a directory into which the | |||
561 | user checks in items (e.g. a local directory containing a development | 560 | user checks in items (e.g. a local directory containing a development |
562 | source tree used by the group). | 561 | source tree used by the group). |
563 | 562 | ||
564 | The canonical method through which to include a local project is to use | 563 | The canonical method through which to include a local project is to use the |
565 | the :ref:`externalsrc <ref-classes-externalsrc>` | 564 | :ref:`ref-classes-externalsrc` class to include that local project. You use |
566 | class to include that local project. You use either the ``local.conf`` | 565 | either the ``local.conf`` or a recipe's append file to override or set the |
567 | or a recipe's append file to override or set the recipe to point to the | 566 | recipe to point to the local directory on your disk to pull in the whole |
568 | local directory on your disk to pull in the whole source tree. | 567 | source tree. |
569 | 568 | ||
570 | Source Control Managers (Optional) | 569 | Source Control Managers (Optional) |
571 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | 570 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
@@ -628,8 +627,7 @@ types, and you specify which classes to enable through the | |||
628 | :term:`PACKAGE_CLASSES` | 627 | :term:`PACKAGE_CLASSES` |
629 | variable. Before placing the packages into package feeds, the build | 628 | variable. Before placing the packages into package feeds, the build |
630 | process validates them with generated output quality assurance checks | 629 | process validates them with generated output quality assurance checks |
631 | through the :ref:`insane <ref-classes-insane>` | 630 | through the :ref:`ref-classes-insane` class. |
632 | class. | ||
633 | 631 | ||
634 | The package feed area resides in the :term:`Build Directory`. The directory the | 632 | The package feed area resides in the :term:`Build Directory`. The directory the |
635 | build system uses to temporarily store packages is determined by a | 633 | build system uses to temporarily store packages is determined by a |
@@ -840,14 +838,12 @@ This step in the build process consists of the following tasks: | |||
840 | are specific to configurations for the source code being built by the | 838 | are specific to configurations for the source code being built by the |
841 | recipe. | 839 | recipe. |
842 | 840 | ||
843 | If you are using the | 841 | If you are using the :ref:`ref-classes-autotools` class, |
844 | :ref:`autotools <ref-classes-autotools>` class, | ||
845 | you can add additional configuration options by using the | 842 | you can add additional configuration options by using the |
846 | :term:`EXTRA_OECONF` or | 843 | :term:`EXTRA_OECONF` or |
847 | :term:`PACKAGECONFIG_CONFARGS` | 844 | :term:`PACKAGECONFIG_CONFARGS` |
848 | variables. For information on how this variable works within that | 845 | variables. For information on how this variable works within that |
849 | class, see the | 846 | class, see the :ref:`ref-classes-autotools` class |
850 | :ref:`autotools <ref-classes-autotools>` class | ||
851 | :yocto_git:`here </poky/tree/meta/classes-recipe/autotools.bbclass>`. | 847 | :yocto_git:`here </poky/tree/meta/classes-recipe/autotools.bbclass>`. |
852 | 848 | ||
853 | - *do_compile*: Once a configuration task has been satisfied, | 849 | - *do_compile*: Once a configuration task has been satisfied, |
@@ -920,7 +916,7 @@ the analysis and package splitting process use several areas: | |||
920 | - :term:`STAGING_DIR_TARGET`: | 916 | - :term:`STAGING_DIR_TARGET`: |
921 | The path for the sysroot used when a component that is built to | 917 | The path for the sysroot used when a component that is built to |
922 | execute on a system and it generates code for yet another machine | 918 | execute on a system and it generates code for yet another machine |
923 | (e.g. :ref:`cross-canadian <ref-classes-cross-canadian>` recipes). | 919 | (e.g. :ref:`ref-classes-cross-canadian` recipes). |
924 | 920 | ||
925 | The :term:`FILES` variable defines the | 921 | The :term:`FILES` variable defines the |
926 | files that go into each package in | 922 | files that go into each package in |
@@ -1006,13 +1002,11 @@ is read-only. | |||
1006 | The final stages of the :ref:`ref-tasks-rootfs` task handle post processing. Post | 1002 | The final stages of the :ref:`ref-tasks-rootfs` task handle post processing. Post |
1007 | processing includes creation of a manifest file and optimizations. | 1003 | processing includes creation of a manifest file and optimizations. |
1008 | 1004 | ||
1009 | The manifest file (``.manifest``) resides in the same directory as the | 1005 | The manifest file (``.manifest``) resides in the same directory as the root |
1010 | root filesystem image. This file lists out, line-by-line, the installed | 1006 | filesystem image. This file lists out, line-by-line, the installed packages. |
1011 | packages. The manifest file is useful for the | 1007 | The manifest file is useful for the :ref:`ref-classes-testimage` class, |
1012 | :ref:`testimage <ref-classes-testimage>` class, | ||
1013 | for example, to determine whether or not to run specific tests. See the | 1008 | for example, to determine whether or not to run specific tests. See the |
1014 | :term:`IMAGE_MANIFEST` | 1009 | :term:`IMAGE_MANIFEST` variable for additional information. |
1015 | variable for additional information. | ||
1016 | 1010 | ||
1017 | Optimizing processes that are run across the image include ``mklibs`` | 1011 | Optimizing processes that are run across the image include ``mklibs`` |
1018 | and any other post-processing commands as defined by the | 1012 | and any other post-processing commands as defined by the |
@@ -1751,12 +1745,11 @@ half the problem of supporting a shared state. The other half of the | |||
1751 | problem is being able to use checksum information during the build and | 1745 | problem is being able to use checksum information during the build and |
1752 | being able to reuse or rebuild specific components. | 1746 | being able to reuse or rebuild specific components. |
1753 | 1747 | ||
1754 | The :ref:`sstate <ref-classes-sstate>` class is a | 1748 | The :ref:`ref-classes-sstate` class is a relatively generic implementation of |
1755 | relatively generic implementation of how to "capture" a snapshot of a | 1749 | how to "capture" a snapshot of a given task. The idea is that the build process |
1756 | given task. The idea is that the build process does not care about the | 1750 | does not care about the source of a task's output. Output could be freshly |
1757 | source of a task's output. Output could be freshly built or it could be | 1751 | built or it could be downloaded and unpacked from somewhere. In other words, |
1758 | downloaded and unpacked from somewhere. In other words, the build | 1752 | the build process does not need to worry about its origin. |
1759 | process does not need to worry about its origin. | ||
1760 | 1753 | ||
1761 | Two types of output exist. One type is just about creating a directory | 1754 | Two types of output exist. One type is just about creating a directory |
1762 | in :term:`WORKDIR`. A good example is | 1755 | in :term:`WORKDIR`. A good example is |
@@ -1767,10 +1760,9 @@ type of output occurs when a set of data is merged into a shared | |||
1767 | directory tree such as the sysroot. | 1760 | directory tree such as the sysroot. |
1768 | 1761 | ||
1769 | The Yocto Project team has tried to keep the details of the | 1762 | The Yocto Project team has tried to keep the details of the |
1770 | implementation hidden in the :ref:`sstate <ref-classes-sstate>` class. From a user's perspective, | 1763 | implementation hidden in the :ref:`ref-classes-sstate` class. From a user's perspective, |
1771 | adding shared state wrapping to a task is as simple as this | 1764 | adding shared state wrapping to a task is as simple as this |
1772 | :ref:`ref-tasks-deploy` example taken | 1765 | :ref:`ref-tasks-deploy` example taken from the :ref:`ref-classes-deploy` class:: |
1773 | from the :ref:`deploy <ref-classes-deploy>` class:: | ||
1774 | 1766 | ||
1775 | DEPLOYDIR = "${WORKDIR}/deploy-${PN}" | 1767 | DEPLOYDIR = "${WORKDIR}/deploy-${PN}" |
1776 | SSTATETASKS += "do_deploy" | 1768 | SSTATETASKS += "do_deploy" |
@@ -1786,11 +1778,9 @@ from the :ref:`deploy <ref-classes-deploy>` class:: | |||
1786 | 1778 | ||
1787 | The following list explains the previous example: | 1779 | The following list explains the previous example: |
1788 | 1780 | ||
1789 | - Adding ``do_deploy`` to ``SSTATETASKS`` adds some required | 1781 | - Adding ``do_deploy`` to ``SSTATETASKS`` adds some required sstate-related |
1790 | sstate-related processing, which is implemented in the | 1782 | processing, which is implemented in the :ref:`ref-classes-sstate` class, to |
1791 | :ref:`sstate <ref-classes-sstate>` class, to | 1783 | before and after the :ref:`ref-tasks-deploy` task. |
1792 | before and after the | ||
1793 | :ref:`ref-tasks-deploy` task. | ||
1794 | 1784 | ||
1795 | - The ``do_deploy[sstate-inputdirs] = "${DEPLOYDIR}"`` declares that | 1785 | - The ``do_deploy[sstate-inputdirs] = "${DEPLOYDIR}"`` declares that |
1796 | :ref:`ref-tasks-deploy` places its output in ``${DEPLOYDIR}`` when run normally | 1786 | :ref:`ref-tasks-deploy` places its output in ``${DEPLOYDIR}`` when run normally |
diff --git a/documentation/ref-manual/classes.rst b/documentation/ref-manual/classes.rst index fed3dcc066..7dba617db5 100644 --- a/documentation/ref-manual/classes.rst +++ b/documentation/ref-manual/classes.rst | |||
@@ -37,7 +37,7 @@ information. | |||
37 | ``allarch`` | 37 | ``allarch`` |
38 | =========== | 38 | =========== |
39 | 39 | ||
40 | The :ref:`allarch <ref-classes-allarch>` class is inherited by recipes that do not produce | 40 | The :ref:`ref-classes-allarch` class is inherited by recipes that do not produce |
41 | architecture-specific output. The class disables functionality that is | 41 | architecture-specific output. The class disables functionality that is |
42 | normally needed for recipes that produce executable binaries (such as | 42 | normally needed for recipes that produce executable binaries (such as |
43 | building the cross-compiler and a C library as pre-requisites, and | 43 | building the cross-compiler and a C library as pre-requisites, and |
@@ -49,7 +49,7 @@ splitting out of debug symbols during packaging). | |||
49 | produce packages that depend on tunings through use of the | 49 | produce packages that depend on tunings through use of the |
50 | :term:`RDEPENDS` and | 50 | :term:`RDEPENDS` and |
51 | :term:`TUNE_PKGARCH` variables, should never be | 51 | :term:`TUNE_PKGARCH` variables, should never be |
52 | configured for all architectures using :ref:`allarch <ref-classes-allarch>`. This is the case | 52 | configured for all architectures using :ref:`ref-classes-allarch`. This is the case |
53 | even if the recipes do not produce architecture-specific output. | 53 | even if the recipes do not produce architecture-specific output. |
54 | 54 | ||
55 | Configuring such recipes for all architectures causes the | 55 | Configuring such recipes for all architectures causes the |
@@ -58,22 +58,22 @@ splitting out of debug symbols during packaging). | |||
58 | Additionally, unnecessary rebuilds occur every time an image for a | 58 | Additionally, unnecessary rebuilds occur every time an image for a |
59 | different :term:`MACHINE` is built even when the recipe never changes. | 59 | different :term:`MACHINE` is built even when the recipe never changes. |
60 | 60 | ||
61 | By default, all recipes inherit the :ref:`base <ref-classes-base>` and | 61 | By default, all recipes inherit the :ref:`ref-classes-base` and |
62 | :ref:`package <ref-classes-package>` classes, which enable | 62 | :ref:`ref-classes-package` classes, which enable |
63 | functionality needed for recipes that produce executable output. If your | 63 | functionality needed for recipes that produce executable output. If your |
64 | recipe, for example, only produces packages that contain configuration | 64 | recipe, for example, only produces packages that contain configuration |
65 | files, media files, or scripts (e.g. Python and Perl), then it should | 65 | files, media files, or scripts (e.g. Python and Perl), then it should |
66 | inherit the :ref:`allarch <ref-classes-allarch>` class. | 66 | inherit the :ref:`ref-classes-allarch` class. |
67 | 67 | ||
68 | .. _ref-classes-archiver: | 68 | .. _ref-classes-archiver: |
69 | 69 | ||
70 | ``archiver`` | 70 | ``archiver`` |
71 | ============ | 71 | ============ |
72 | 72 | ||
73 | The :ref:`archiver <ref-classes-archiver>` class supports releasing source code and other | 73 | The :ref:`ref-classes-archiver` class supports releasing source code and other |
74 | materials with the binaries. | 74 | materials with the binaries. |
75 | 75 | ||
76 | For more details on the source :ref:`archiver <ref-classes-archiver>`, see the | 76 | For more details on the source :ref:`ref-classes-archiver`, see the |
77 | ":ref:`dev-manual/licenses:maintaining open source license compliance during your product's lifecycle`" | 77 | ":ref:`dev-manual/licenses:maintaining open source license compliance during your product's lifecycle`" |
78 | section in the Yocto Project Development Tasks Manual. You can also see | 78 | section in the Yocto Project Development Tasks Manual. You can also see |
79 | the :term:`ARCHIVER_MODE` variable for information | 79 | the :term:`ARCHIVER_MODE` variable for information |
@@ -102,7 +102,7 @@ By default, the :ref:`autotools* <ref-classes-autotools>` classes use out-of-tre | |||
102 | If the software being built by a recipe does not support using | 102 | If the software being built by a recipe does not support using |
103 | out-of-tree builds, you should have the recipe inherit the | 103 | out-of-tree builds, you should have the recipe inherit the |
104 | :ref:`autotools-brokensep <ref-classes-autotools>` class. The :ref:`autotools-brokensep <ref-classes-autotools>` class behaves | 104 | :ref:`autotools-brokensep <ref-classes-autotools>` class. The :ref:`autotools-brokensep <ref-classes-autotools>` class behaves |
105 | the same as the :ref:`autotools <ref-classes-autotools>` class but builds with :term:`B` | 105 | the same as the :ref:`ref-classes-autotools` class but builds with :term:`B` |
106 | == :term:`S`. This method is useful when out-of-tree build | 106 | == :term:`S`. This method is useful when out-of-tree build |
107 | support is either not present or is broken. | 107 | support is either not present or is broken. |
108 | 108 | ||
@@ -133,14 +133,13 @@ It's useful to have some idea of how the tasks defined by the | |||
133 | ``base`` | 133 | ``base`` |
134 | ======== | 134 | ======== |
135 | 135 | ||
136 | The :ref:`base <ref-classes-base>` class is special in that every ``.bb`` file implicitly | 136 | The :ref:`ref-classes-base` class is special in that every ``.bb`` file implicitly |
137 | inherits the class. This class contains definitions for standard basic | 137 | inherits the class. This class contains definitions for standard basic |
138 | tasks such as fetching, unpacking, configuring (empty by default), | 138 | tasks such as fetching, unpacking, configuring (empty by default), |
139 | compiling (runs any ``Makefile`` present), installing (empty by default) | 139 | compiling (runs any ``Makefile`` present), installing (empty by default) |
140 | and packaging (empty by default). These classes are often overridden or | 140 | and packaging (empty by default). These classes are often overridden or |
141 | extended by other classes such as the | 141 | extended by other classes such as the :ref:`ref-classes-autotools` class or the |
142 | :ref:`autotools <ref-classes-autotools>` class or the | 142 | :ref:`ref-classes-package` class. |
143 | :ref:`package <ref-classes-package>` class. | ||
144 | 143 | ||
145 | The class also contains some commonly used functions such as | 144 | The class also contains some commonly used functions such as |
146 | ``oe_runmake``, which runs ``make`` with the arguments specified in | 145 | ``oe_runmake``, which runs ``make`` with the arguments specified in |
@@ -160,7 +159,7 @@ software that includes bash-completion data. | |||
160 | ``bin_package`` | 159 | ``bin_package`` |
161 | =============== | 160 | =============== |
162 | 161 | ||
163 | The :ref:`bin_package <ref-classes-bin-package>` class is a helper class for recipes that extract the | 162 | The :ref:`ref-classes-bin-package` class is a helper class for recipes that extract the |
164 | contents of a binary package (e.g. an RPM) and install those contents | 163 | contents of a binary package (e.g. an RPM) and install those contents |
165 | rather than building the binary from source. The binary package is | 164 | rather than building the binary from source. The binary package is |
166 | extracted and new packages in the configured output package format are | 165 | extracted and new packages in the configured output package format are |
@@ -187,7 +186,7 @@ example use for this class. | |||
187 | ``binconfig`` | 186 | ``binconfig`` |
188 | ============= | 187 | ============= |
189 | 188 | ||
190 | The :ref:`binconfig <ref-classes-binconfig>` class helps to correct paths in shell scripts. | 189 | The :ref:`ref-classes-binconfig` class helps to correct paths in shell scripts. |
191 | 190 | ||
192 | Before ``pkg-config`` had become widespread, libraries shipped shell | 191 | Before ``pkg-config`` had become widespread, libraries shipped shell |
193 | scripts to give information about the libraries and include paths needed | 192 | scripts to give information about the libraries and include paths needed |
@@ -207,7 +206,7 @@ information. | |||
207 | ``binconfig-disabled`` | 206 | ``binconfig-disabled`` |
208 | ====================== | 207 | ====================== |
209 | 208 | ||
210 | An alternative version of the :ref:`binconfig <ref-classes-binconfig>` | 209 | An alternative version of the :ref:`ref-classes-binconfig` |
211 | class, which disables binary configuration scripts by making them return | 210 | class, which disables binary configuration scripts by making them return |
212 | an error in favor of using ``pkg-config`` to query the information. The | 211 | an error in favor of using ``pkg-config`` to query the information. The |
213 | scripts to be disabled should be specified using the :term:`BINCONFIG` | 212 | scripts to be disabled should be specified using the :term:`BINCONFIG` |
@@ -218,7 +217,7 @@ variable within the recipe inheriting the class. | |||
218 | ``buildhistory`` | 217 | ``buildhistory`` |
219 | ================ | 218 | ================ |
220 | 219 | ||
221 | The :ref:`buildhistory <ref-classes-buildhistory>` class records a history of build output metadata, | 220 | The :ref:`ref-classes-buildhistory` class records a history of build output metadata, |
222 | which can be used to detect possible regressions as well as used for | 221 | which can be used to detect possible regressions as well as used for |
223 | analysis of the build output. For more information on using Build | 222 | analysis of the build output. For more information on using Build |
224 | History, see the | 223 | History, see the |
@@ -230,7 +229,7 @@ section in the Yocto Project Development Tasks Manual. | |||
230 | ``buildstats`` | 229 | ``buildstats`` |
231 | ============== | 230 | ============== |
232 | 231 | ||
233 | The :ref:`buildstats <ref-classes-buildstats>` class records performance statistics about each task | 232 | The :ref:`ref-classes-buildstats` class records performance statistics about each task |
234 | executed during the build (e.g. elapsed time, CPU usage, and I/O usage). | 233 | executed during the build (e.g. elapsed time, CPU usage, and I/O usage). |
235 | 234 | ||
236 | When you use this class, the output goes into the | 235 | When you use this class, the output goes into the |
@@ -244,7 +243,7 @@ Collecting build statistics is enabled by default through the | |||
244 | :term:`USER_CLASSES` variable from your | 243 | :term:`USER_CLASSES` variable from your |
245 | ``local.conf`` file. Consequently, you do not have to do anything to | 244 | ``local.conf`` file. Consequently, you do not have to do anything to |
246 | enable the class. However, if you want to disable the class, simply | 245 | enable the class. However, if you want to disable the class, simply |
247 | remove ":ref:`buildstats <ref-classes-buildstats>`" from the :term:`USER_CLASSES` list. | 246 | remove ":ref:`ref-classes-buildstats`" from the :term:`USER_CLASSES` list. |
248 | 247 | ||
249 | .. _ref-classes-buildstats-summary: | 248 | .. _ref-classes-buildstats-summary: |
250 | 249 | ||
@@ -253,14 +252,14 @@ remove ":ref:`buildstats <ref-classes-buildstats>`" from the :term:`USER_CLASSES | |||
253 | 252 | ||
254 | When inherited globally, prints statistics at the end of the build on | 253 | When inherited globally, prints statistics at the end of the build on |
255 | sstate re-use. In order to function, this class requires the | 254 | sstate re-use. In order to function, this class requires the |
256 | :ref:`buildstats <ref-classes-buildstats>` class be enabled. | 255 | :ref:`ref-classes-buildstats` class be enabled. |
257 | 256 | ||
258 | .. _ref-classes-ccache: | 257 | .. _ref-classes-ccache: |
259 | 258 | ||
260 | ``ccache`` | 259 | ``ccache`` |
261 | ========== | 260 | ========== |
262 | 261 | ||
263 | The :ref:`ccache <ref-classes-ccache>` class enables the C/C++ Compiler Cache for the build. | 262 | The :ref:`ref-classes-ccache` class enables the C/C++ Compiler Cache for the build. |
264 | This class is used to give a minor performance boost during the build. | 263 | This class is used to give a minor performance boost during the build. |
265 | 264 | ||
266 | See https://ccache.samba.org/ for information on the C/C++ Compiler | 265 | See https://ccache.samba.org/ for information on the C/C++ Compiler |
@@ -277,9 +276,9 @@ this class is not recommended. | |||
277 | ``chrpath`` | 276 | ``chrpath`` |
278 | =========== | 277 | =========== |
279 | 278 | ||
280 | The :ref:`chrpath <ref-classes-chrpath>` class is a wrapper around the "chrpath" utility, which | 279 | The :ref:`ref-classes-chrpath` class is a wrapper around the "chrpath" utility, which |
281 | is used during the build process for :ref:`nativesdk <ref-classes-nativesdk>`, :ref:`cross <ref-classes-cross>`, and | 280 | is used during the build process for :ref:`ref-classes-nativesdk`, :ref:`ref-classes-cross`, and |
282 | :ref:`cross-canadian <ref-classes-cross-canadian>` recipes to change ``RPATH`` records within binaries | 281 | :ref:`ref-classes-cross-canadian` recipes to change ``RPATH`` records within binaries |
283 | in order to make them relocatable. | 282 | in order to make them relocatable. |
284 | 283 | ||
285 | .. _ref-classes-cmake: | 284 | .. _ref-classes-cmake: |
@@ -287,7 +286,7 @@ in order to make them relocatable. | |||
287 | ``cmake`` | 286 | ``cmake`` |
288 | ========= | 287 | ========= |
289 | 288 | ||
290 | The ref:`cmake <ref-classes-cmake>` class allows for recipes that need to build software using | 289 | The ref:`ref-classes-cmake` class allows for recipes that need to build software using |
291 | the `CMake <https://cmake.org/overview/>`__ build system. You can use | 290 | the `CMake <https://cmake.org/overview/>`__ build system. You can use |
292 | the :term:`EXTRA_OECMAKE` variable to specify | 291 | the :term:`EXTRA_OECMAKE` variable to specify |
293 | additional configuration options to be passed using the ``cmake`` | 292 | additional configuration options to be passed using the ``cmake`` |
@@ -304,7 +303,7 @@ Modules during | |||
304 | ``cml1`` | 303 | ``cml1`` |
305 | ======== | 304 | ======== |
306 | 305 | ||
307 | The :ref:`cml1 <ref-classes-cml1>` class provides basic support for the Linux kernel style | 306 | The :ref:`ref-classes-cml1` class provides basic support for the Linux kernel style |
308 | build configuration system. | 307 | build configuration system. |
309 | 308 | ||
310 | .. _ref-classes-compress_doc: | 309 | .. _ref-classes-compress_doc: |
@@ -322,18 +321,18 @@ but you can select an alternative mechanism by setting the | |||
322 | ``copyleft_compliance`` | 321 | ``copyleft_compliance`` |
323 | ======================= | 322 | ======================= |
324 | 323 | ||
325 | The :ref:`copyleft_compliance <ref-classes-copyleft_compliance>` class preserves source code for the purposes | 324 | The :ref:`ref-classes-copyleft_compliance` class preserves source code for the purposes |
326 | of license compliance. This class is an alternative to the :ref:`archiver <ref-classes-archiver>` | 325 | of license compliance. This class is an alternative to the :ref:`ref-classes-archiver` |
327 | class and is still used by some users even though it has been deprecated | 326 | class and is still used by some users even though it has been deprecated |
328 | in favor of the :ref:`archiver <ref-classes-archiver>` class. | 327 | in favor of the :ref:`ref-classes-archiver` class. |
329 | 328 | ||
330 | .. _ref-classes-copyleft_filter: | 329 | .. _ref-classes-copyleft_filter: |
331 | 330 | ||
332 | ``copyleft_filter`` | 331 | ``copyleft_filter`` |
333 | =================== | 332 | =================== |
334 | 333 | ||
335 | A class used by the :ref:`archiver <ref-classes-archiver>` and | 334 | A class used by the :ref:`ref-classes-archiver` and |
336 | :ref:`copyleft_compliance <ref-classes-copyleft_compliance>` classes | 335 | :ref:`ref-classes-copyleft_compliance` classes |
337 | for filtering licenses. The ``copyleft_filter`` class is an internal | 336 | for filtering licenses. The ``copyleft_filter`` class is an internal |
338 | class and is not intended to be used directly. | 337 | class and is not intended to be used directly. |
339 | 338 | ||
@@ -342,7 +341,7 @@ class and is not intended to be used directly. | |||
342 | ``core-image`` | 341 | ``core-image`` |
343 | ============== | 342 | ============== |
344 | 343 | ||
345 | The :ref:`core-image <ref-classes-core-image>` class provides common definitions for the | 344 | The :ref:`ref-classes-core-image` class provides common definitions for the |
346 | ``core-image-*`` image recipes, such as support for additional | 345 | ``core-image-*`` image recipes, such as support for additional |
347 | :term:`IMAGE_FEATURES`. | 346 | :term:`IMAGE_FEATURES`. |
348 | 347 | ||
@@ -372,7 +371,7 @@ support. | |||
372 | ``create-spdx`` | 371 | ``create-spdx`` |
373 | =============== | 372 | =============== |
374 | 373 | ||
375 | The :ref:`create-spdx <ref-classes-create-spdx>` class provides support for | 374 | The :ref:`ref-classes-create-spdx` class provides support for |
376 | automatically creating :term:`SPDX` :term:`SBOM` documents based upon image | 375 | automatically creating :term:`SPDX` :term:`SBOM` documents based upon image |
377 | and SDK contents. | 376 | and SDK contents. |
378 | 377 | ||
@@ -398,7 +397,7 @@ section in the Yocto Project Development Manual for more details. | |||
398 | ``cross`` | 397 | ``cross`` |
399 | ========= | 398 | ========= |
400 | 399 | ||
401 | The :ref:`cross <ref-classes-cross>` class provides support for the recipes that build the | 400 | The :ref:`ref-classes-cross` class provides support for the recipes that build the |
402 | cross-compilation tools. | 401 | cross-compilation tools. |
403 | 402 | ||
404 | .. _ref-classes-cross-canadian: | 403 | .. _ref-classes-cross-canadian: |
@@ -406,7 +405,7 @@ cross-compilation tools. | |||
406 | ``cross-canadian`` | 405 | ``cross-canadian`` |
407 | ================== | 406 | ================== |
408 | 407 | ||
409 | The :ref:`cross-canadian <ref-classes-cross-canadian>` class provides support for the recipes that build | 408 | The :ref:`ref-classes-cross-canadian` class provides support for the recipes that build |
410 | the Canadian Cross-compilation tools for SDKs. See the | 409 | the Canadian Cross-compilation tools for SDKs. See the |
411 | ":ref:`overview-manual/concepts:cross-development toolchain generation`" | 410 | ":ref:`overview-manual/concepts:cross-development toolchain generation`" |
412 | section in the Yocto Project Overview and Concepts Manual for more | 411 | section in the Yocto Project Overview and Concepts Manual for more |
@@ -417,7 +416,7 @@ discussion on these cross-compilation tools. | |||
417 | ``crosssdk`` | 416 | ``crosssdk`` |
418 | ============ | 417 | ============ |
419 | 418 | ||
420 | The :ref:`crosssdk <ref-classes-crosssdk>` class provides support for the recipes that build the | 419 | The :ref:`ref-classes-crosssdk` class provides support for the recipes that build the |
421 | cross-compilation tools used for building SDKs. See the | 420 | cross-compilation tools used for building SDKs. See the |
422 | ":ref:`overview-manual/concepts:cross-development toolchain generation`" | 421 | ":ref:`overview-manual/concepts:cross-development toolchain generation`" |
423 | section in the Yocto Project Overview and Concepts Manual for more | 422 | section in the Yocto Project Overview and Concepts Manual for more |
@@ -428,7 +427,7 @@ discussion on these cross-compilation tools. | |||
428 | ``cve-check`` | 427 | ``cve-check`` |
429 | ============= | 428 | ============= |
430 | 429 | ||
431 | The :ref:`cve-check <ref-classes-cve-check>` class looks for known CVEs (Common Vulnerabilities | 430 | The :ref:`ref-classes-cve-check` class looks for known CVEs (Common Vulnerabilities |
432 | and Exposures) while building with BitBake. This class is meant to be | 431 | and Exposures) while building with BitBake. This class is meant to be |
433 | inherited globally from a configuration file:: | 432 | inherited globally from a configuration file:: |
434 | 433 | ||
@@ -492,7 +491,7 @@ section in the Development Tasks Manual. | |||
492 | ``debian`` | 491 | ``debian`` |
493 | ========== | 492 | ========== |
494 | 493 | ||
495 | The :ref:`debian <ref-classes-debian>` class renames output packages so that they follow the | 494 | The :ref:`ref-classes-debian` class renames output packages so that they follow the |
496 | Debian naming policy (i.e. ``glibc`` becomes ``libc6`` and | 495 | Debian naming policy (i.e. ``glibc`` becomes ``libc6`` and |
497 | ``glibc-devel`` becomes ``libc6-dev``.) Renaming includes the library | 496 | ``glibc-devel`` becomes ``libc6-dev``.) Renaming includes the library |
498 | name and version as part of the package name. | 497 | name and version as part of the package name. |
@@ -507,7 +506,7 @@ naming scheme. | |||
507 | ``deploy`` | 506 | ``deploy`` |
508 | ========== | 507 | ========== |
509 | 508 | ||
510 | The :ref:`deploy <ref-classes-deploy>` class handles deploying files to the | 509 | The :ref:`ref-classes-deploy` class handles deploying files to the |
511 | :term:`DEPLOY_DIR_IMAGE` directory. The main | 510 | :term:`DEPLOY_DIR_IMAGE` directory. The main |
512 | function of this class is to allow the deploy step to be accelerated by | 511 | function of this class is to allow the deploy step to be accelerated by |
513 | shared state. Recipes that inherit this class should define their own | 512 | shared state. Recipes that inherit this class should define their own |
@@ -523,17 +522,17 @@ staging the files from :term:`DEPLOYDIR` to :term:`DEPLOY_DIR_IMAGE`. | |||
523 | ``devshell`` | 522 | ``devshell`` |
524 | ============ | 523 | ============ |
525 | 524 | ||
526 | The :ref:`devshell <ref-classes-devshell>` class adds the :ref:`ref-tasks-devshell` task. Distribution | 525 | The :ref:`ref-classes-devshell` class adds the :ref:`ref-tasks-devshell` task. Distribution |
527 | policy dictates whether to include this class. See the ":ref:`dev-manual/development-shell:using a development shell`" | 526 | policy dictates whether to include this class. See the ":ref:`dev-manual/development-shell:using a development shell`" |
528 | section in the Yocto Project Development Tasks Manual for more | 527 | section in the Yocto Project Development Tasks Manual for more |
529 | information about using :ref:`devshell <ref-classes-devshell>`. | 528 | information about using :ref:`ref-classes-devshell`. |
530 | 529 | ||
531 | .. _ref-classes-devupstream: | 530 | .. _ref-classes-devupstream: |
532 | 531 | ||
533 | ``devupstream`` | 532 | ``devupstream`` |
534 | =============== | 533 | =============== |
535 | 534 | ||
536 | The :ref:`devupstream <ref-classes-devupstream>` class uses | 535 | The :ref:`ref-classes-devupstream` class uses |
537 | :term:`BBCLASSEXTEND` to add a variant of the | 536 | :term:`BBCLASSEXTEND` to add a variant of the |
538 | recipe that fetches from an alternative URI (e.g. Git) instead of a | 537 | recipe that fetches from an alternative URI (e.g. Git) instead of a |
539 | tarball. Following is an example:: | 538 | tarball. Following is an example:: |
@@ -555,10 +554,10 @@ Any development-specific adjustments can be done by using the | |||
555 | 554 | ||
556 | The class | 555 | The class |
557 | currently only supports creating a development variant of the target | 556 | currently only supports creating a development variant of the target |
558 | recipe, not :ref:`native <ref-classes-native>` or :ref:`nativesdk <ref-classes-nativesdk>` variants. | 557 | recipe, not :ref:`ref-classes-native` or :ref:`ref-classes-nativesdk` variants. |
559 | 558 | ||
560 | The :term:`BBCLASSEXTEND` syntax (i.e. ``devupstream:target``) provides | 559 | The :term:`BBCLASSEXTEND` syntax (i.e. ``devupstream:target``) provides |
561 | support for :ref:`native <ref-classes-native>` and :ref:`nativesdk <ref-classes-nativesdk>` variants. Consequently, this | 560 | support for :ref:`ref-classes-native` and :ref:`ref-classes-nativesdk` variants. Consequently, this |
562 | functionality can be added in a future release. | 561 | functionality can be added in a future release. |
563 | 562 | ||
564 | Support for other version control systems such as Subversion is limited | 563 | Support for other version control systems such as Subversion is limited |
@@ -570,7 +569,7 @@ due to BitBake's automatic fetch dependencies (e.g. | |||
570 | ``externalsrc`` | 569 | ``externalsrc`` |
571 | =============== | 570 | =============== |
572 | 571 | ||
573 | The :ref:`externalsrc <ref-classes-externalsrc>` class supports building software from source code | 572 | The :ref:`ref-classes-externalsrc` class supports building software from source code |
574 | that is external to the OpenEmbedded build system. Building software | 573 | that is external to the OpenEmbedded build system. Building software |
575 | from an external source tree means that the build system's normal fetch, | 574 | from an external source tree means that the build system's normal fetch, |
576 | unpack, and patch process is not used. | 575 | unpack, and patch process is not used. |
@@ -578,7 +577,7 @@ unpack, and patch process is not used. | |||
578 | By default, the OpenEmbedded build system uses the :term:`S` | 577 | By default, the OpenEmbedded build system uses the :term:`S` |
579 | and :term:`B` variables to locate unpacked recipe source code | 578 | and :term:`B` variables to locate unpacked recipe source code |
580 | and to build it, respectively. When your recipe inherits the | 579 | and to build it, respectively. When your recipe inherits the |
581 | :ref:`externalsrc <ref-classes-externalsrc>` class, you use the | 580 | :ref:`ref-classes-externalsrc` class, you use the |
582 | :term:`EXTERNALSRC` and :term:`EXTERNALSRC_BUILD` variables to | 581 | :term:`EXTERNALSRC` and :term:`EXTERNALSRC_BUILD` variables to |
583 | ultimately define :term:`S` and :term:`B`. | 582 | ultimately define :term:`S` and :term:`B`. |
584 | 583 | ||
@@ -594,10 +593,9 @@ See these variables for more information: | |||
594 | :term:`WORKDIR`, :term:`BPN`, and | 593 | :term:`WORKDIR`, :term:`BPN`, and |
595 | :term:`PV`, | 594 | :term:`PV`, |
596 | 595 | ||
597 | For more information on the :ref:`externalsrc <ref-classes-externalsrc>` class, see the comments in | 596 | For more information on the :ref:`ref-classes-externalsrc` class, see the comments in |
598 | ``meta/classes/externalsrc.bbclass`` in the :term:`Source Directory`. | 597 | ``meta/classes/externalsrc.bbclass`` in the :term:`Source Directory`. |
599 | For information on how to use the | 598 | For information on how to use the :ref:`ref-classes-externalsrc` class, see the |
600 | :ref:`externalsrc <ref-classes-externalsrc>` class, see the | ||
601 | ":ref:`dev-manual/building:building software from an external source`" | 599 | ":ref:`dev-manual/building:building software from an external source`" |
602 | section in the Yocto Project Development Tasks Manual. | 600 | section in the Yocto Project Development Tasks Manual. |
603 | 601 | ||
@@ -606,7 +604,7 @@ section in the Yocto Project Development Tasks Manual. | |||
606 | ``extrausers`` | 604 | ``extrausers`` |
607 | ============== | 605 | ============== |
608 | 606 | ||
609 | The :ref:`extrausers <ref-classes-extrausers>` class allows additional user and group configuration | 607 | The :ref:`ref-classes-extrausers` class allows additional user and group configuration |
610 | to be applied at the image level. Inheriting this class either globally | 608 | to be applied at the image level. Inheriting this class either globally |
611 | or from an image recipe allows additional user and group operations to | 609 | or from an image recipe allows additional user and group operations to |
612 | be performed using the | 610 | be performed using the |
@@ -614,13 +612,11 @@ be performed using the | |||
614 | 612 | ||
615 | .. note:: | 613 | .. note:: |
616 | 614 | ||
617 | The user and group operations added using the | 615 | The user and group operations added using the :ref:`ref-classes-extrausers` |
618 | :ref:`extrausers <ref-classes-extrausers>` | ||
619 | class are not tied to a specific recipe outside of the recipe for the | 616 | class are not tied to a specific recipe outside of the recipe for the |
620 | image. Thus, the operations can be performed across the image as a | 617 | image. Thus, the operations can be performed across the image as a |
621 | whole. Use the | 618 | whole. Use the :ref:`ref-classes-useradd` class to add user and group |
622 | :ref:`useradd <ref-classes-useradd>` | 619 | configuration to a specific recipe. |
623 | class to add user and group configuration to a specific recipe. | ||
624 | 620 | ||
625 | Here is an example that uses this class in an image recipe:: | 621 | Here is an example that uses this class in an image recipe:: |
626 | 622 | ||
@@ -668,9 +664,9 @@ Finally, here is an example that sets the root password:: | |||
668 | ``features_check`` | 664 | ``features_check`` |
669 | ================== | 665 | ================== |
670 | 666 | ||
671 | The :ref:`features_check <ref-classes-features_check>` class allows individual recipes to check | 667 | The :ref:`ref-classes-features_check` class allows individual recipes to check |
672 | for required and conflicting | 668 | for required and conflicting :term:`DISTRO_FEATURES`, :term:`MACHINE_FEATURES` |
673 | :term:`DISTRO_FEATURES`, :term:`MACHINE_FEATURES` or :term:`COMBINED_FEATURES`. | 669 | or :term:`COMBINED_FEATURES`. |
674 | 670 | ||
675 | This class provides support for the following variables: | 671 | This class provides support for the following variables: |
676 | 672 | ||
@@ -694,7 +690,7 @@ triggered. | |||
694 | ``fontcache`` | 690 | ``fontcache`` |
695 | ============= | 691 | ============= |
696 | 692 | ||
697 | The :ref:`fontcache <ref-classes-fontcache>` class generates the proper post-install and | 693 | The :ref:`ref-classes-fontcache` class generates the proper post-install and |
698 | post-remove (postinst and postrm) scriptlets for font packages. These | 694 | post-remove (postinst and postrm) scriptlets for font packages. These |
699 | scriptlets call ``fc-cache`` (part of ``Fontconfig``) to add the fonts | 695 | scriptlets call ``fc-cache`` (part of ``Fontconfig``) to add the fonts |
700 | to the font information cache. Since the cache files are | 696 | to the font information cache. Since the cache files are |
@@ -710,9 +706,9 @@ packages containing the fonts. | |||
710 | ``fs-uuid`` | 706 | ``fs-uuid`` |
711 | =========== | 707 | =========== |
712 | 708 | ||
713 | The :ref:`fs-uuid <ref-classes-fs-uuid>` class extracts UUID from | 709 | The :ref:`ref-classes-fs-uuid` class extracts UUID from |
714 | ``${``\ :term:`ROOTFS`\ ``}``, which must have been built | 710 | ``${``\ :term:`ROOTFS`\ ``}``, which must have been built |
715 | by the time that this function gets called. The :ref:`fs-uuid <ref-classes-fs-uuid>` class only | 711 | by the time that this function gets called. The :ref:`ref-classes-fs-uuid` class only |
716 | works on ``ext`` file systems and depends on ``tune2fs``. | 712 | works on ``ext`` file systems and depends on ``tune2fs``. |
717 | 713 | ||
718 | .. _ref-classes-gconf: | 714 | .. _ref-classes-gconf: |
@@ -720,7 +716,7 @@ works on ``ext`` file systems and depends on ``tune2fs``. | |||
720 | ``gconf`` | 716 | ``gconf`` |
721 | ========= | 717 | ========= |
722 | 718 | ||
723 | The :ref:`gconf <ref-classes-gconf>` class provides common functionality for recipes that need | 719 | The :ref:`ref-classes-gconf` class provides common functionality for recipes that need |
724 | to install GConf schemas. The schemas will be put into a separate | 720 | to install GConf schemas. The schemas will be put into a separate |
725 | package (``${``\ :term:`PN`\ ``}-gconf``) that is created | 721 | package (``${``\ :term:`PN`\ ``}-gconf``) that is created |
726 | automatically when this class is inherited. This package uses the | 722 | automatically when this class is inherited. This package uses the |
@@ -732,7 +728,7 @@ register and unregister the schemas in the target image. | |||
732 | ``gettext`` | 728 | ``gettext`` |
733 | =========== | 729 | =========== |
734 | 730 | ||
735 | The :ref:`gettext <ref-classes-gettext>` class provides support for building | 731 | The :ref:`ref-classes-gettext` class provides support for building |
736 | software that uses the GNU ``gettext`` internationalization and localization | 732 | software that uses the GNU ``gettext`` internationalization and localization |
737 | system. All recipes building software that use ``gettext`` should inherit this | 733 | system. All recipes building software that use ``gettext`` should inherit this |
738 | class. | 734 | class. |
@@ -742,11 +738,11 @@ class. | |||
742 | ``github-releases`` | 738 | ``github-releases`` |
743 | =================== | 739 | =================== |
744 | 740 | ||
745 | For recipes that fetch release tarballs from github, the :ref:`github-releases <ref-classes-github-releases>` | 741 | For recipes that fetch release tarballs from github, the :ref:`ref-classes-github-releases` |
746 | class sets up a standard way for checking available upstream versions | 742 | class sets up a standard way for checking available upstream versions |
747 | (to support ``devtool upgrade`` and the Automated Upgrade Helper (AUH)). | 743 | (to support ``devtool upgrade`` and the Automated Upgrade Helper (AUH)). |
748 | 744 | ||
749 | To use it, add ":ref:`github-releases <ref-classes-github-releases>`" to the inherit line in the recipe, | 745 | To use it, add ":ref:`ref-classes-github-releases`" to the inherit line in the recipe, |
750 | and if the default value of :term:`GITHUB_BASE_URI` is not suitable, | 746 | and if the default value of :term:`GITHUB_BASE_URI` is not suitable, |
751 | then set your own value in the recipe. You should then use ``${GITHUB_BASE_URI}`` | 747 | then set your own value in the recipe. You should then use ``${GITHUB_BASE_URI}`` |
752 | in the value you set for :term:`SRC_URI` within the recipe. | 748 | in the value you set for :term:`SRC_URI` within the recipe. |
@@ -756,7 +752,7 @@ in the value you set for :term:`SRC_URI` within the recipe. | |||
756 | ``gnomebase`` | 752 | ``gnomebase`` |
757 | ============= | 753 | ============= |
758 | 754 | ||
759 | The :ref:`gnomebase <ref-classes-gnomebase>` class is the base class for recipes that build | 755 | The :ref:`ref-classes-gnomebase` class is the base class for recipes that build |
760 | software from the GNOME stack. This class sets | 756 | software from the GNOME stack. This class sets |
761 | :term:`SRC_URI` to download the source from the GNOME | 757 | :term:`SRC_URI` to download the source from the GNOME |
762 | mirrors as well as extending :term:`FILES` with the typical | 758 | mirrors as well as extending :term:`FILES` with the typical |
@@ -785,7 +781,7 @@ introspection. This functionality is only enabled if the | |||
785 | ``grub-efi`` | 781 | ``grub-efi`` |
786 | ============ | 782 | ============ |
787 | 783 | ||
788 | The :ref:`grub-efi <ref-classes-grub-efi>` class provides ``grub-efi``-specific functions for | 784 | The :ref:`ref-classes-grub-efi` class provides ``grub-efi``-specific functions for |
789 | building bootable images. | 785 | building bootable images. |
790 | 786 | ||
791 | This class supports several variables: | 787 | This class supports several variables: |
@@ -817,7 +813,7 @@ This class supports several variables: | |||
817 | ``gsettings`` | 813 | ``gsettings`` |
818 | ============= | 814 | ============= |
819 | 815 | ||
820 | The :ref:`gsettings <ref-classes-gsettings>` class provides common functionality for recipes that | 816 | The :ref:`ref-classes-gsettings` class provides common functionality for recipes that |
821 | need to install GSettings (glib) schemas. The schemas are assumed to be | 817 | need to install GSettings (glib) schemas. The schemas are assumed to be |
822 | part of the main package. Appropriate post-install and post-remove | 818 | part of the main package. Appropriate post-install and post-remove |
823 | (postinst/postrm) scriptlets are added to register and unregister the | 819 | (postinst/postrm) scriptlets are added to register and unregister the |
@@ -828,7 +824,7 @@ schemas in the target image. | |||
828 | ``gtk-doc`` | 824 | ``gtk-doc`` |
829 | =========== | 825 | =========== |
830 | 826 | ||
831 | The :ref:`gtk-doc <ref-classes-gtk-doc>` class is a helper class to pull in the appropriate | 827 | The :ref:`ref-classes-gtk-doc` class is a helper class to pull in the appropriate |
832 | ``gtk-doc`` dependencies and disable ``gtk-doc``. | 828 | ``gtk-doc`` dependencies and disable ``gtk-doc``. |
833 | 829 | ||
834 | .. _ref-classes-gtk-icon-cache: | 830 | .. _ref-classes-gtk-icon-cache: |
@@ -836,7 +832,7 @@ The :ref:`gtk-doc <ref-classes-gtk-doc>` class is a helper class to pull in the | |||
836 | ``gtk-icon-cache`` | 832 | ``gtk-icon-cache`` |
837 | ================== | 833 | ================== |
838 | 834 | ||
839 | The :ref:`gtk-icon-cache <ref-classes-gtk-icon-cache>` class generates the proper post-install and | 835 | The :ref:`ref-classes-gtk-icon-cache` class generates the proper post-install and |
840 | post-remove (postinst/postrm) scriptlets for packages that use GTK+ and | 836 | post-remove (postinst/postrm) scriptlets for packages that use GTK+ and |
841 | install icons. These scriptlets call ``gtk-update-icon-cache`` to add | 837 | install icons. These scriptlets call ``gtk-update-icon-cache`` to add |
842 | the fonts to GTK+'s icon cache. Since the cache files are | 838 | the fonts to GTK+'s icon cache. Since the cache files are |
@@ -849,7 +845,7 @@ creation. | |||
849 | ``gtk-immodules-cache`` | 845 | ``gtk-immodules-cache`` |
850 | ======================= | 846 | ======================= |
851 | 847 | ||
852 | The :ref:`gtk-immodules-cache <ref-classes-gtk-immodules-cache>` class generates the proper post-install and | 848 | The :ref:`ref-classes-gtk-immodules-cache` class generates the proper post-install and |
853 | post-remove (postinst/postrm) scriptlets for packages that install GTK+ | 849 | post-remove (postinst/postrm) scriptlets for packages that install GTK+ |
854 | input method modules for virtual keyboards. These scriptlets call | 850 | input method modules for virtual keyboards. These scriptlets call |
855 | ``gtk-update-icon-cache`` to add the input method modules to the cache. | 851 | ``gtk-update-icon-cache`` to add the input method modules to the cache. |
@@ -867,7 +863,7 @@ the packages containing the modules. | |||
867 | ``gzipnative`` | 863 | ``gzipnative`` |
868 | ============== | 864 | ============== |
869 | 865 | ||
870 | The :ref:`gzipnative <ref-classes-gzipnative>` class enables the use of different native versions of | 866 | The :ref:`ref-classes-gzipnative` class enables the use of different native versions of |
871 | ``gzip`` and ``pigz`` rather than the versions of these tools from the | 867 | ``gzip`` and ``pigz`` rather than the versions of these tools from the |
872 | build host. | 868 | build host. |
873 | 869 | ||
@@ -876,7 +872,7 @@ build host. | |||
876 | ``icecc`` | 872 | ``icecc`` |
877 | ========= | 873 | ========= |
878 | 874 | ||
879 | The :ref:`icecc <ref-classes-icecc>` class supports | 875 | The :ref:`ref-classes-icecc` class supports |
880 | `Icecream <https://github.com/icecc/icecream>`__, which facilitates | 876 | `Icecream <https://github.com/icecc/icecream>`__, which facilitates |
881 | taking compile jobs and distributing them among remote machines. | 877 | taking compile jobs and distributing them among remote machines. |
882 | 878 | ||
@@ -924,13 +920,13 @@ Additionally, you can list recipes using the | |||
924 | your ``local.conf`` file to force ``icecc`` to be enabled for recipes | 920 | your ``local.conf`` file to force ``icecc`` to be enabled for recipes |
925 | using an empty :term:`PARALLEL_MAKE` variable. | 921 | using an empty :term:`PARALLEL_MAKE` variable. |
926 | 922 | ||
927 | Inheriting the :ref:`icecc <ref-classes-icecc>` class changes all sstate signatures. | 923 | Inheriting the :ref:`ref-classes-icecc` class changes all sstate signatures. |
928 | Consequently, if a development team has a dedicated build system that | 924 | Consequently, if a development team has a dedicated build system that |
929 | populates :term:`SSTATE_MIRRORS` and they want to | 925 | populates :term:`SSTATE_MIRRORS` and they want to |
930 | reuse sstate from :term:`SSTATE_MIRRORS`, then all developers and the build | 926 | reuse sstate from :term:`SSTATE_MIRRORS`, then all developers and the build |
931 | system need to either inherit the :ref:`icecc <ref-classes-icecc>` class or nobody should. | 927 | system need to either inherit the :ref:`ref-classes-icecc` class or nobody should. |
932 | 928 | ||
933 | At the distribution level, you can inherit the :ref:`icecc <ref-classes-icecc>` class to be | 929 | At the distribution level, you can inherit the :ref:`ref-classes-icecc` class to be |
934 | sure that all builders start with the same sstate signatures. After | 930 | sure that all builders start with the same sstate signatures. After |
935 | inheriting the class, you can then disable the feature by setting the | 931 | inheriting the class, you can then disable the feature by setting the |
936 | :term:`ICECC_DISABLED` variable to "1" as follows:: | 932 | :term:`ICECC_DISABLED` variable to "1" as follows:: |
@@ -950,7 +946,7 @@ individually as follows in your ``local.conf`` file:: | |||
950 | ``image`` | 946 | ``image`` |
951 | ========= | 947 | ========= |
952 | 948 | ||
953 | The :ref:`image <ref-classes-image>` class helps support creating images in different formats. | 949 | The :ref:`ref-classes-image` class helps support creating images in different formats. |
954 | First, the root filesystem is created from packages using one of the | 950 | First, the root filesystem is created from packages using one of the |
955 | ``rootfs*.bbclass`` files (depending on the package format used) and | 951 | ``rootfs*.bbclass`` files (depending on the package format used) and |
956 | then one or more image files are created. | 952 | then one or more image files are created. |
@@ -973,7 +969,7 @@ Yocto Project Overview and Concepts Manual. | |||
973 | ``image-buildinfo`` | 969 | ``image-buildinfo`` |
974 | =================== | 970 | =================== |
975 | 971 | ||
976 | The :ref:`image-buildinfo <ref-classes-image-buildinfo>` class writes a plain text file containing | 972 | The :ref:`ref-classes-image-buildinfo` class writes a plain text file containing |
977 | build information to the target filesystem at ``${sysconfdir}/buildinfo`` | 973 | build information to the target filesystem at ``${sysconfdir}/buildinfo`` |
978 | by default (as specified by :term:`IMAGE_BUILDINFO_FILE`). | 974 | by default (as specified by :term:`IMAGE_BUILDINFO_FILE`). |
979 | This can be useful for manually determining the origin of any given | 975 | This can be useful for manually determining the origin of any given |
@@ -995,14 +991,14 @@ to ``/buildinfo`` by default (as specified by | |||
995 | ``image_types`` | 991 | ``image_types`` |
996 | =============== | 992 | =============== |
997 | 993 | ||
998 | The :ref:`image_types <ref-classes-image_types>` class defines all of the standard image output types | 994 | The :ref:`ref-classes-image_types` class defines all of the standard image output types |
999 | that you can enable through the | 995 | that you can enable through the |
1000 | :term:`IMAGE_FSTYPES` variable. You can use this | 996 | :term:`IMAGE_FSTYPES` variable. You can use this |
1001 | class as a reference on how to add support for custom image output | 997 | class as a reference on how to add support for custom image output |
1002 | types. | 998 | types. |
1003 | 999 | ||
1004 | By default, the :ref:`image <ref-classes-image>` class automatically | 1000 | By default, the :ref:`ref-classes-image` class automatically |
1005 | enables the :ref:`image_types <ref-classes-image_types>` class. The :ref:`image <ref-classes-image>` class uses the | 1001 | enables the :ref:`ref-classes-image_types` class. The :ref:`ref-classes-image` class uses the |
1006 | ``IMGCLASSES`` variable as follows:: | 1002 | ``IMGCLASSES`` variable as follows:: |
1007 | 1003 | ||
1008 | IMGCLASSES = "rootfs_${IMAGE_PKGTYPE} image_types ${IMAGE_CLASSES}" | 1004 | IMGCLASSES = "rootfs_${IMAGE_PKGTYPE} image_types ${IMAGE_CLASSES}" |
@@ -1014,7 +1010,7 @@ enables the :ref:`image_types <ref-classes-image_types>` class. The :ref:`image | |||
1014 | IMGCLASSES += "image-postinst-intercepts" | 1010 | IMGCLASSES += "image-postinst-intercepts" |
1015 | inherit ${IMGCLASSES} | 1011 | inherit ${IMGCLASSES} |
1016 | 1012 | ||
1017 | The :ref:`image_types <ref-classes-image_types>` class also handles conversion and compression of images. | 1013 | The :ref:`ref-classes-image_types` class also handles conversion and compression of images. |
1018 | 1014 | ||
1019 | .. note:: | 1015 | .. note:: |
1020 | 1016 | ||
@@ -1040,7 +1036,7 @@ Normally, you do not use this class directly. Instead, you add "live" to | |||
1040 | ``insane`` | 1036 | ``insane`` |
1041 | ========== | 1037 | ========== |
1042 | 1038 | ||
1043 | The :ref:`insane <ref-classes-insane>` class adds a step to the package generation process so | 1039 | The :ref:`ref-classes-insane` class adds a step to the package generation process so |
1044 | that output quality assurance checks are generated by the OpenEmbedded | 1040 | that output quality assurance checks are generated by the OpenEmbedded |
1045 | build system. A range of checks are performed that check the build's | 1041 | build system. A range of checks are performed that check the build's |
1046 | output for common problems that show up during runtime. Distribution | 1042 | output for common problems that show up during runtime. Distribution |
@@ -1100,7 +1096,7 @@ Here are the tests you can list with the :term:`WARN_QA` and | |||
1100 | the package is installed into the image during the | 1096 | the package is installed into the image during the |
1101 | :ref:`ref-tasks-rootfs` task because the auto-detected | 1097 | :ref:`ref-tasks-rootfs` task because the auto-detected |
1102 | dependency was not satisfied. An example of this would be where the | 1098 | dependency was not satisfied. An example of this would be where the |
1103 | :ref:`update-rc.d <ref-classes-update-rc.d>` class automatically | 1099 | :ref:`ref-classes-update-rc.d` class automatically |
1104 | adds a dependency on the ``initscripts-functions`` package to | 1100 | adds a dependency on the ``initscripts-functions`` package to |
1105 | packages that install an initscript that refers to | 1101 | packages that install an initscript that refers to |
1106 | ``/etc/init.d/functions``. The recipe should really have an explicit | 1102 | ``/etc/init.d/functions``. The recipe should really have an explicit |
@@ -1340,7 +1336,7 @@ Here are the tests you can list with the :term:`WARN_QA` and | |||
1340 | ``insserv`` | 1336 | ``insserv`` |
1341 | =========== | 1337 | =========== |
1342 | 1338 | ||
1343 | The :ref:`insserv <ref-classes-insserv>` class uses the ``insserv`` utility to update the order | 1339 | The :ref:`ref-classes-insserv` class uses the ``insserv`` utility to update the order |
1344 | of symbolic links in ``/etc/rc?.d/`` within an image based on | 1340 | of symbolic links in ``/etc/rc?.d/`` within an image based on |
1345 | dependencies specified by LSB headers in the ``init.d`` scripts | 1341 | dependencies specified by LSB headers in the ``init.d`` scripts |
1346 | themselves. | 1342 | themselves. |
@@ -1350,10 +1346,10 @@ themselves. | |||
1350 | ``kernel`` | 1346 | ``kernel`` |
1351 | ========== | 1347 | ========== |
1352 | 1348 | ||
1353 | The :ref:`kernel <ref-classes-kernel>` class handles building Linux kernels. The class contains | 1349 | The :ref:`ref-classes-kernel` class handles building Linux kernels. The class contains |
1354 | code to build all kernel trees. All needed headers are staged into the | 1350 | code to build all kernel trees. All needed headers are staged into the |
1355 | :term:`STAGING_KERNEL_DIR` directory to allow out-of-tree module builds | 1351 | :term:`STAGING_KERNEL_DIR` directory to allow out-of-tree module builds |
1356 | using the :ref:`module <ref-classes-module>` class. | 1352 | using the :ref:`ref-classes-module` class. |
1357 | 1353 | ||
1358 | This means that each built kernel module is packaged separately and | 1354 | This means that each built kernel module is packaged separately and |
1359 | inter-module dependencies are created by parsing the ``modinfo`` output. | 1355 | inter-module dependencies are created by parsing the ``modinfo`` output. |
@@ -1361,23 +1357,22 @@ If all modules are required, then installing the ``kernel-modules`` | |||
1361 | package installs all packages with modules and various other kernel | 1357 | package installs all packages with modules and various other kernel |
1362 | packages such as ``kernel-vmlinux``. | 1358 | packages such as ``kernel-vmlinux``. |
1363 | 1359 | ||
1364 | The :ref:`kernel <ref-classes-kernel>` class contains logic that allows you to embed an initial | 1360 | The :ref:`ref-classes-kernel` class contains logic that allows you to embed an initial |
1365 | RAM filesystem (:term:`Initramfs`) image when you build the kernel image. For | 1361 | RAM filesystem (:term:`Initramfs`) image when you build the kernel image. For |
1366 | information on how to build an :term:`Initramfs`, see the | 1362 | information on how to build an :term:`Initramfs`, see the |
1367 | ":ref:`dev-manual/building:building an initial ram filesystem (Initramfs) image`" section in | 1363 | ":ref:`dev-manual/building:building an initial ram filesystem (Initramfs) image`" section in |
1368 | the Yocto Project Development Tasks Manual. | 1364 | the Yocto Project Development Tasks Manual. |
1369 | 1365 | ||
1370 | Various other classes are used by the :ref:`kernel <ref-classes-kernel>` and :ref:`module <ref-classes-module>` classes | 1366 | Various other classes are used by the :ref:`ref-classes-kernel` and :ref:`ref-classes-module` classes |
1371 | internally including the :ref:`kernel-arch <ref-classes-kernel-arch>`, | 1367 | internally including the :ref:`ref-classes-kernel-arch`, :ref:`ref-classes-module-base`, and |
1372 | :ref:`module-base <ref-classes-module-base>`, and | 1368 | :ref:`ref-classes-linux-kernel-base` classes. |
1373 | :ref:`linux-kernel-base <ref-classes-linux-kernel-base>` classes. | ||
1374 | 1369 | ||
1375 | .. _ref-classes-kernel-arch: | 1370 | .. _ref-classes-kernel-arch: |
1376 | 1371 | ||
1377 | ``kernel-arch`` | 1372 | ``kernel-arch`` |
1378 | =============== | 1373 | =============== |
1379 | 1374 | ||
1380 | The :ref:`kernel-arch <ref-classes-kernel-arch>` class sets the ``ARCH`` environment variable for | 1375 | The :ref:`ref-classes-kernel-arch` class sets the ``ARCH`` environment variable for |
1381 | Linux kernel compilation (including modules). | 1376 | Linux kernel compilation (including modules). |
1382 | 1377 | ||
1383 | .. _ref-classes-kernel-devicetree: | 1378 | .. _ref-classes-kernel-devicetree: |
@@ -1385,26 +1380,25 @@ Linux kernel compilation (including modules). | |||
1385 | ``kernel-devicetree`` | 1380 | ``kernel-devicetree`` |
1386 | ===================== | 1381 | ===================== |
1387 | 1382 | ||
1388 | The :ref:`kernel-devicetree <ref-classes-kernel-devicetree>` class, which is inherited by the | 1383 | The :ref:`ref-classes-kernel-devicetree` class, which is inherited by the |
1389 | :ref:`kernel <ref-classes-kernel>` class, supports device tree | 1384 | :ref:`ref-classes-kernel` class, supports device tree generation. |
1390 | generation. | ||
1391 | 1385 | ||
1392 | .. _ref-classes-kernel-fitimage: | 1386 | .. _ref-classes-kernel-fitimage: |
1393 | 1387 | ||
1394 | ``kernel-fitimage`` | 1388 | ``kernel-fitimage`` |
1395 | =================== | 1389 | =================== |
1396 | 1390 | ||
1397 | The :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` class provides support to pack a kernel image, | 1391 | The :ref:`ref-classes-kernel-fitimage` class provides support to pack a kernel image, |
1398 | device trees, a U-boot script, a :term:`Initramfs` bundle and a RAM disk | 1392 | device trees, a U-boot script, a :term:`Initramfs` bundle and a RAM disk |
1399 | into a single FIT image. In theory, a FIT image can support any number | 1393 | into a single FIT image. In theory, a FIT image can support any number |
1400 | of kernels, U-boot scripts, :term:`Initramfs` bundles, RAM disks and device-trees. | 1394 | of kernels, U-boot scripts, :term:`Initramfs` bundles, RAM disks and device-trees. |
1401 | However, :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` currently only supports | 1395 | However, :ref:`ref-classes-kernel-fitimage` currently only supports |
1402 | limited usecases: just one kernel image, an optional U-boot script, | 1396 | limited usecases: just one kernel image, an optional U-boot script, |
1403 | an optional :term:`Initramfs` bundle, an optional RAM disk, and any number of | 1397 | an optional :term:`Initramfs` bundle, an optional RAM disk, and any number of |
1404 | device tree. | 1398 | device tree. |
1405 | 1399 | ||
1406 | To create a FIT image, it is required that :term:`KERNEL_CLASSES` | 1400 | To create a FIT image, it is required that :term:`KERNEL_CLASSES` |
1407 | is set to include ":ref:`kernel-fitimage <ref-classes-kernel-fitimage>`" and :term:`KERNEL_IMAGETYPE` | 1401 | is set to include ":ref:`ref-classes-kernel-fitimage`" and :term:`KERNEL_IMAGETYPE` |
1408 | is set to "fitImage". | 1402 | is set to "fitImage". |
1409 | 1403 | ||
1410 | The options for the device tree compiler passed to ``mkimage -D`` | 1404 | The options for the device tree compiler passed to ``mkimage -D`` |
@@ -1412,19 +1406,19 @@ when creating the FIT image are specified using the | |||
1412 | :term:`UBOOT_MKIMAGE_DTCOPTS` variable. | 1406 | :term:`UBOOT_MKIMAGE_DTCOPTS` variable. |
1413 | 1407 | ||
1414 | Only a single kernel can be added to the FIT image created by | 1408 | Only a single kernel can be added to the FIT image created by |
1415 | :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` and the kernel image in FIT is mandatory. The | 1409 | :ref:`ref-classes-kernel-fitimage` and the kernel image in FIT is mandatory. The |
1416 | address where the kernel image is to be loaded by U-Boot is | 1410 | address where the kernel image is to be loaded by U-Boot is |
1417 | specified by :term:`UBOOT_LOADADDRESS` and the entrypoint by | 1411 | specified by :term:`UBOOT_LOADADDRESS` and the entrypoint by |
1418 | :term:`UBOOT_ENTRYPOINT`. | 1412 | :term:`UBOOT_ENTRYPOINT`. |
1419 | 1413 | ||
1420 | Multiple device trees can be added to the FIT image created by | 1414 | Multiple device trees can be added to the FIT image created by |
1421 | :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` and the device tree is optional. | 1415 | :ref:`ref-classes-kernel-fitimage` and the device tree is optional. |
1422 | The address where the device tree is to be loaded by U-Boot is | 1416 | The address where the device tree is to be loaded by U-Boot is |
1423 | specified by :term:`UBOOT_DTBO_LOADADDRESS` for device tree overlays | 1417 | specified by :term:`UBOOT_DTBO_LOADADDRESS` for device tree overlays |
1424 | and by :term:`UBOOT_DTB_LOADADDRESS` for device tree binaries. | 1418 | and by :term:`UBOOT_DTB_LOADADDRESS` for device tree binaries. |
1425 | 1419 | ||
1426 | Only a single RAM disk can be added to the FIT image created by | 1420 | Only a single RAM disk can be added to the FIT image created by |
1427 | :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` and the RAM disk in FIT is optional. | 1421 | :ref:`ref-classes-kernel-fitimage` and the RAM disk in FIT is optional. |
1428 | The address where the RAM disk image is to be loaded by U-Boot | 1422 | The address where the RAM disk image is to be loaded by U-Boot |
1429 | is specified by :term:`UBOOT_RD_LOADADDRESS` and the entrypoint by | 1423 | is specified by :term:`UBOOT_RD_LOADADDRESS` and the entrypoint by |
1430 | :term:`UBOOT_RD_ENTRYPOINT`. The ramdisk is added to FIT image when | 1424 | :term:`UBOOT_RD_ENTRYPOINT`. The ramdisk is added to FIT image when |
@@ -1432,7 +1426,7 @@ is specified by :term:`UBOOT_RD_LOADADDRESS` and the entrypoint by | |||
1432 | is set to 0. | 1426 | is set to 0. |
1433 | 1427 | ||
1434 | Only a single :term:`Initramfs` bundle can be added to the FIT image created by | 1428 | Only a single :term:`Initramfs` bundle can be added to the FIT image created by |
1435 | :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` and the :term:`Initramfs` bundle in FIT is optional. | 1429 | :ref:`ref-classes-kernel-fitimage` and the :term:`Initramfs` bundle in FIT is optional. |
1436 | In case of :term:`Initramfs`, the kernel is configured to be bundled with the root filesystem | 1430 | In case of :term:`Initramfs`, the kernel is configured to be bundled with the root filesystem |
1437 | in the same binary (example: zImage-initramfs-:term:`MACHINE`.bin). | 1431 | in the same binary (example: zImage-initramfs-:term:`MACHINE`.bin). |
1438 | When the kernel is copied to RAM and executed, it unpacks the :term:`Initramfs` root filesystem. | 1432 | When the kernel is copied to RAM and executed, it unpacks the :term:`Initramfs` root filesystem. |
@@ -1442,21 +1436,21 @@ The address where the :term:`Initramfs` bundle is to be loaded by U-boot is spec | |||
1442 | by :term:`UBOOT_LOADADDRESS` and the entrypoint by :term:`UBOOT_ENTRYPOINT`. | 1436 | by :term:`UBOOT_LOADADDRESS` and the entrypoint by :term:`UBOOT_ENTRYPOINT`. |
1443 | 1437 | ||
1444 | Only a single U-boot boot script can be added to the FIT image created by | 1438 | Only a single U-boot boot script can be added to the FIT image created by |
1445 | :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` and the boot script is optional. | 1439 | :ref:`ref-classes-kernel-fitimage` and the boot script is optional. |
1446 | The boot script is specified in the ITS file as a text file containing | 1440 | The boot script is specified in the ITS file as a text file containing |
1447 | U-boot commands. When using a boot script the user should configure the | 1441 | U-boot commands. When using a boot script the user should configure the |
1448 | U-boot :ref:`ref-tasks-install` task to copy the script to sysroot. | 1442 | U-boot :ref:`ref-tasks-install` task to copy the script to sysroot. |
1449 | So the script can be included in the FIT image by the :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` | 1443 | So the script can be included in the FIT image by the :ref:`ref-classes-kernel-fitimage` |
1450 | class. At run-time, U-boot CONFIG_BOOTCOMMAND define can be configured to | 1444 | class. At run-time, U-boot CONFIG_BOOTCOMMAND define can be configured to |
1451 | load the boot script from the FIT image and executes it. | 1445 | load the boot script from the FIT image and executes it. |
1452 | 1446 | ||
1453 | The FIT image generated by :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` class is signed when the | 1447 | The FIT image generated by :ref:`ref-classes-kernel-fitimage` class is signed when the |
1454 | variables :term:`UBOOT_SIGN_ENABLE`, :term:`UBOOT_MKIMAGE_DTCOPTS`, | 1448 | variables :term:`UBOOT_SIGN_ENABLE`, :term:`UBOOT_MKIMAGE_DTCOPTS`, |
1455 | :term:`UBOOT_SIGN_KEYDIR` and :term:`UBOOT_SIGN_KEYNAME` are set | 1449 | :term:`UBOOT_SIGN_KEYDIR` and :term:`UBOOT_SIGN_KEYNAME` are set |
1456 | appropriately. The default values used for :term:`FIT_HASH_ALG` and | 1450 | appropriately. The default values used for :term:`FIT_HASH_ALG` and |
1457 | :term:`FIT_SIGN_ALG` in :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` are "sha256" and | 1451 | :term:`FIT_SIGN_ALG` in :ref:`ref-classes-kernel-fitimage` are "sha256" and |
1458 | "rsa2048" respectively. The keys for signing fitImage can be generated using | 1452 | "rsa2048" respectively. The keys for signing fitImage can be generated using |
1459 | the :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` class when both :term:`FIT_GENERATE_KEYS` and | 1453 | the :ref:`ref-classes-kernel-fitimage` class when both :term:`FIT_GENERATE_KEYS` and |
1460 | :term:`UBOOT_SIGN_ENABLE` are set to "1". | 1454 | :term:`UBOOT_SIGN_ENABLE` are set to "1". |
1461 | 1455 | ||
1462 | 1456 | ||
@@ -1465,7 +1459,7 @@ the :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` class when both :term:` | |||
1465 | ``kernel-grub`` | 1459 | ``kernel-grub`` |
1466 | =============== | 1460 | =============== |
1467 | 1461 | ||
1468 | The :ref:`kernel-grub <ref-classes-kernel-grub>` class updates the boot area and the boot menu with | 1462 | The :ref:`ref-classes-kernel-grub` class updates the boot area and the boot menu with |
1469 | the kernel as the priority boot mechanism while installing a RPM to | 1463 | the kernel as the priority boot mechanism while installing a RPM to |
1470 | update the kernel on a deployed target. | 1464 | update the kernel on a deployed target. |
1471 | 1465 | ||
@@ -1474,7 +1468,7 @@ update the kernel on a deployed target. | |||
1474 | ``kernel-module-split`` | 1468 | ``kernel-module-split`` |
1475 | ======================= | 1469 | ======================= |
1476 | 1470 | ||
1477 | The :ref:`kernel-module-split <ref-classes-kernel-module-split>` class provides common functionality for | 1471 | The :ref:`ref-classes-kernel-module-split` class provides common functionality for |
1478 | splitting Linux kernel modules into separate packages. | 1472 | splitting Linux kernel modules into separate packages. |
1479 | 1473 | ||
1480 | .. _ref-classes-kernel-uboot: | 1474 | .. _ref-classes-kernel-uboot: |
@@ -1482,7 +1476,7 @@ splitting Linux kernel modules into separate packages. | |||
1482 | ``kernel-uboot`` | 1476 | ``kernel-uboot`` |
1483 | ================ | 1477 | ================ |
1484 | 1478 | ||
1485 | The :ref:`kernel-uboot <ref-classes-kernel-uboot>` class provides support for building from | 1479 | The :ref:`ref-classes-kernel-uboot` class provides support for building from |
1486 | vmlinux-style kernel sources. | 1480 | vmlinux-style kernel sources. |
1487 | 1481 | ||
1488 | .. _ref-classes-kernel-uimage: | 1482 | .. _ref-classes-kernel-uimage: |
@@ -1490,14 +1484,14 @@ vmlinux-style kernel sources. | |||
1490 | ``kernel-uimage`` | 1484 | ``kernel-uimage`` |
1491 | ================= | 1485 | ================= |
1492 | 1486 | ||
1493 | The :ref:`kernel-uimage <ref-classes-kernel-uimage>` class provides support to pack uImage. | 1487 | The :ref:`ref-classes-kernel-uimage` class provides support to pack uImage. |
1494 | 1488 | ||
1495 | .. _ref-classes-kernel-yocto: | 1489 | .. _ref-classes-kernel-yocto: |
1496 | 1490 | ||
1497 | ``kernel-yocto`` | 1491 | ``kernel-yocto`` |
1498 | ================ | 1492 | ================ |
1499 | 1493 | ||
1500 | The :ref:`kernel-yocto <ref-classes-kernel-yocto>` class provides common functionality for building | 1494 | The :ref:`ref-classes-kernel-yocto` class provides common functionality for building |
1501 | from linux-yocto style kernel source repositories. | 1495 | from linux-yocto style kernel source repositories. |
1502 | 1496 | ||
1503 | .. _ref-classes-kernelsrc: | 1497 | .. _ref-classes-kernelsrc: |
@@ -1505,14 +1499,14 @@ from linux-yocto style kernel source repositories. | |||
1505 | ``kernelsrc`` | 1499 | ``kernelsrc`` |
1506 | ============= | 1500 | ============= |
1507 | 1501 | ||
1508 | The :ref:`kernelsrc <ref-classes-kernelsrc>` class sets the Linux kernel source and version. | 1502 | The :ref:`ref-classes-kernelsrc` class sets the Linux kernel source and version. |
1509 | 1503 | ||
1510 | .. _ref-classes-lib_package: | 1504 | .. _ref-classes-lib_package: |
1511 | 1505 | ||
1512 | ``lib_package`` | 1506 | ``lib_package`` |
1513 | =============== | 1507 | =============== |
1514 | 1508 | ||
1515 | The :ref:`lib_package <ref-classes-lib_package>` class supports recipes that build libraries and | 1509 | The :ref:`ref-classes-lib_package` class supports recipes that build libraries and |
1516 | produce executable binaries, where those binaries should not be | 1510 | produce executable binaries, where those binaries should not be |
1517 | installed by default along with the library. Instead, the binaries are | 1511 | installed by default along with the library. Instead, the binaries are |
1518 | added to a separate ``${``\ :term:`PN`\ ``}-bin`` package to | 1512 | added to a separate ``${``\ :term:`PN`\ ``}-bin`` package to |
@@ -1523,7 +1517,7 @@ make their installation optional. | |||
1523 | ``libc*`` | 1517 | ``libc*`` |
1524 | ========= | 1518 | ========= |
1525 | 1519 | ||
1526 | The :ref:`libc* <ref-classes-libc*>` classes support recipes that build packages with ``libc``: | 1520 | The :ref:`ref-classes-libc*` classes support recipes that build packages with ``libc``: |
1527 | 1521 | ||
1528 | - The :ref:`libc-common <ref-classes-libc*>` class provides common support for building with | 1522 | - The :ref:`libc-common <ref-classes-libc*>` class provides common support for building with |
1529 | ``libc``. | 1523 | ``libc``. |
@@ -1536,7 +1530,7 @@ The :ref:`libc* <ref-classes-libc*>` classes support recipes that build packages | |||
1536 | ``license`` | 1530 | ``license`` |
1537 | =========== | 1531 | =========== |
1538 | 1532 | ||
1539 | The :ref:`license <ref-classes-license>` class provides license manifest creation and license | 1533 | The :ref:`ref-classes-license` class provides license manifest creation and license |
1540 | exclusion. This class is enabled by default using the default value for | 1534 | exclusion. This class is enabled by default using the default value for |
1541 | the :term:`INHERIT_DISTRO` variable. | 1535 | the :term:`INHERIT_DISTRO` variable. |
1542 | 1536 | ||
@@ -1545,7 +1539,7 @@ the :term:`INHERIT_DISTRO` variable. | |||
1545 | ``linux-kernel-base`` | 1539 | ``linux-kernel-base`` |
1546 | ===================== | 1540 | ===================== |
1547 | 1541 | ||
1548 | The :ref:`linux-kernel-base <ref-classes-linux-kernel-base>` class provides common functionality for | 1542 | The :ref:`ref-classes-linux-kernel-base` class provides common functionality for |
1549 | recipes that build out of the Linux kernel source tree. These builds | 1543 | recipes that build out of the Linux kernel source tree. These builds |
1550 | goes beyond the kernel itself. For example, the Perf recipe also | 1544 | goes beyond the kernel itself. For example, the Perf recipe also |
1551 | inherits this class. | 1545 | inherits this class. |
@@ -1564,11 +1558,11 @@ number of other classes. | |||
1564 | ``logging`` | 1558 | ``logging`` |
1565 | =========== | 1559 | =========== |
1566 | 1560 | ||
1567 | The :ref:`logging <ref-classes-logging>` class provides the standard shell functions used to log | 1561 | The :ref:`ref-classes-logging` class provides the standard shell functions used to log |
1568 | messages for various BitBake severity levels (i.e. ``bbplain``, | 1562 | messages for various BitBake severity levels (i.e. ``bbplain``, |
1569 | ``bbnote``, ``bbwarn``, ``bberror``, ``bbfatal``, and ``bbdebug``). | 1563 | ``bbnote``, ``bbwarn``, ``bberror``, ``bbfatal``, and ``bbdebug``). |
1570 | 1564 | ||
1571 | This class is enabled by default since it is inherited by the :ref:`base <ref-classes-base>` | 1565 | This class is enabled by default since it is inherited by the :ref:`ref-classes-base` |
1572 | class. | 1566 | class. |
1573 | 1567 | ||
1574 | .. _ref-classes-metadata_scm: | 1568 | .. _ref-classes-metadata_scm: |
@@ -1576,20 +1570,20 @@ class. | |||
1576 | ``metadata_scm`` | 1570 | ``metadata_scm`` |
1577 | ================ | 1571 | ================ |
1578 | 1572 | ||
1579 | The :ref:`metadata_scm <ref-classes-metadata_scm>` class provides functionality for querying the | 1573 | The :ref:`ref-classes-metadata_scm` class provides functionality for querying the |
1580 | branch and revision of a Source Code Manager (SCM) repository. | 1574 | branch and revision of a Source Code Manager (SCM) repository. |
1581 | 1575 | ||
1582 | The :ref:`base <ref-classes-base>` class uses this class to print the | 1576 | The :ref:`ref-classes-base` class uses this class to print the revisions of |
1583 | revisions of each layer before starting every build. The | 1577 | each layer before starting every build. The :ref:`ref-classes-metadata_scm` |
1584 | :ref:`metadata_scm <ref-classes-metadata_scm>` class is enabled by default because it is inherited by | 1578 | class is enabled by default because it is inherited by the |
1585 | the :ref:`base <ref-classes-base>` class. | 1579 | :ref:`ref-classes-base` class. |
1586 | 1580 | ||
1587 | .. _ref-classes-migrate_localcount: | 1581 | .. _ref-classes-migrate_localcount: |
1588 | 1582 | ||
1589 | ``migrate_localcount`` | 1583 | ``migrate_localcount`` |
1590 | ====================== | 1584 | ====================== |
1591 | 1585 | ||
1592 | The :ref:`migrate_localcount <ref-classes-migrate_localcount>` class verifies a recipe's localcount data and | 1586 | The :ref:`ref-classes-migrate_localcount` class verifies a recipe's localcount data and |
1593 | increments it appropriately. | 1587 | increments it appropriately. |
1594 | 1588 | ||
1595 | .. _ref-classes-mime: | 1589 | .. _ref-classes-mime: |
@@ -1597,7 +1591,7 @@ increments it appropriately. | |||
1597 | ``mime`` | 1591 | ``mime`` |
1598 | ======== | 1592 | ======== |
1599 | 1593 | ||
1600 | The :ref:`mime <ref-classes-mime>` class generates the proper post-install and post-remove | 1594 | The :ref:`ref-classes-mime` class generates the proper post-install and post-remove |
1601 | (postinst/postrm) scriptlets for packages that install MIME type files. | 1595 | (postinst/postrm) scriptlets for packages that install MIME type files. |
1602 | These scriptlets call ``update-mime-database`` to add the MIME types to | 1596 | These scriptlets call ``update-mime-database`` to add the MIME types to |
1603 | the shared database. | 1597 | the shared database. |
@@ -1607,7 +1601,7 @@ the shared database. | |||
1607 | ``mime-xdg`` | 1601 | ``mime-xdg`` |
1608 | ============ | 1602 | ============ |
1609 | 1603 | ||
1610 | The :ref:`mime-xdg <ref-classes-mime-xdg>` class generates the proper | 1604 | The :ref:`ref-classes-mime-xdg` class generates the proper |
1611 | post-install and post-remove (postinst/postrm) scriptlets for packages | 1605 | post-install and post-remove (postinst/postrm) scriptlets for packages |
1612 | that install ``.desktop`` files containing ``MimeType`` entries. | 1606 | that install ``.desktop`` files containing ``MimeType`` entries. |
1613 | These scriptlets call ``update-desktop-database`` to add the MIME types | 1607 | These scriptlets call ``update-desktop-database`` to add the MIME types |
@@ -1628,25 +1622,23 @@ package names to the :term:`MIME_XDG_PACKAGES` variable. | |||
1628 | ``mirrors`` | 1622 | ``mirrors`` |
1629 | =========== | 1623 | =========== |
1630 | 1624 | ||
1631 | The :ref:`mirrors <ref-classes-mirrors>` class sets up some standard | 1625 | The :ref:`ref-classes-mirrors` class sets up some standard |
1632 | :term:`MIRRORS` entries for source code mirrors. These | 1626 | :term:`MIRRORS` entries for source code mirrors. These |
1633 | mirrors provide a fall-back path in case the upstream source specified | 1627 | mirrors provide a fall-back path in case the upstream source specified |
1634 | in :term:`SRC_URI` within recipes is unavailable. | 1628 | in :term:`SRC_URI` within recipes is unavailable. |
1635 | 1629 | ||
1636 | This class is enabled by default since it is inherited by the | 1630 | This class is enabled by default since it is inherited by the |
1637 | :ref:`base <ref-classes-base>` class. | 1631 | :ref:`ref-classes-base` class. |
1638 | 1632 | ||
1639 | .. _ref-classes-module: | 1633 | .. _ref-classes-module: |
1640 | 1634 | ||
1641 | ``module`` | 1635 | ``module`` |
1642 | ========== | 1636 | ========== |
1643 | 1637 | ||
1644 | The :ref:`module <ref-classes-module>` class provides support for building out-of-tree Linux | 1638 | The :ref:`ref-classes-module` class provides support for building out-of-tree Linux |
1645 | kernel modules. The class inherits the | 1639 | kernel modules. The class inherits the :ref:`ref-classes-module-base` and |
1646 | :ref:`module-base <ref-classes-module-base>` and | 1640 | :ref:`ref-classes-kernel-module-split` classes, and implements the |
1647 | :ref:`kernel-module-split <ref-classes-kernel-module-split>` classes, | 1641 | :ref:`ref-tasks-compile` and :ref:`ref-tasks-install` tasks. The class provides |
1648 | and implements the :ref:`ref-tasks-compile` and | ||
1649 | :ref:`ref-tasks-install` tasks. The class provides | ||
1650 | everything needed to build and package a kernel module. | 1642 | everything needed to build and package a kernel module. |
1651 | 1643 | ||
1652 | For general information on out-of-tree Linux kernel modules, see the | 1644 | For general information on out-of-tree Linux kernel modules, see the |
@@ -1658,18 +1650,18 @@ section in the Yocto Project Linux Kernel Development Manual. | |||
1658 | ``module-base`` | 1650 | ``module-base`` |
1659 | =============== | 1651 | =============== |
1660 | 1652 | ||
1661 | The :ref:`module-base <ref-classes-module-base>` class provides the base functionality for building | 1653 | The :ref:`ref-classes-module-base` class provides the base functionality for |
1662 | Linux kernel modules. Typically, a recipe that builds software that | 1654 | building Linux kernel modules. Typically, a recipe that builds software that |
1663 | includes one or more kernel modules and has its own means of building | 1655 | includes one or more kernel modules and has its own means of building the module |
1664 | the module inherits this class as opposed to inheriting the | 1656 | inherits this class as opposed to inheriting the :ref:`ref-classes-module` |
1665 | :ref:`module <ref-classes-module>` class. | 1657 | class. |
1666 | 1658 | ||
1667 | .. _ref-classes-multilib*: | 1659 | .. _ref-classes-multilib*: |
1668 | 1660 | ||
1669 | ``multilib*`` | 1661 | ``multilib*`` |
1670 | ============= | 1662 | ============= |
1671 | 1663 | ||
1672 | The :ref:`multilib* <ref-classes-multilib*>` classes provide support for building libraries with | 1664 | The :ref:`ref-classes-multilib*` classes provide support for building libraries with |
1673 | different target optimizations or target architectures and installing | 1665 | different target optimizations or target architectures and installing |
1674 | them side-by-side in the same image. | 1666 | them side-by-side in the same image. |
1675 | 1667 | ||
@@ -1682,17 +1674,17 @@ section in the Yocto Project Development Tasks Manual. | |||
1682 | ``native`` | 1674 | ``native`` |
1683 | ========== | 1675 | ========== |
1684 | 1676 | ||
1685 | The :ref:`native <ref-classes-native>` class provides common functionality for recipes that | 1677 | The :ref:`ref-classes-native` class provides common functionality for recipes that |
1686 | build tools to run on the :term:`Build Host` (i.e. tools that use the compiler | 1678 | build tools to run on the :term:`Build Host` (i.e. tools that use the compiler |
1687 | or other tools from the build host). | 1679 | or other tools from the build host). |
1688 | 1680 | ||
1689 | You can create a recipe that builds tools that run natively on the host | 1681 | You can create a recipe that builds tools that run natively on the host |
1690 | a couple different ways: | 1682 | a couple different ways: |
1691 | 1683 | ||
1692 | - Create a ``myrecipe-native.bb`` recipe that inherits the :ref:`native <ref-classes-native>` | 1684 | - Create a ``myrecipe-native.bb`` recipe that inherits the :ref:`ref-classes-native` |
1693 | class. If you use this method, you must order the inherit statement | 1685 | class. If you use this method, you must order the inherit statement |
1694 | in the recipe after all other inherit statements so that the | 1686 | in the recipe after all other inherit statements so that the |
1695 | :ref:`native <ref-classes-native>` class is inherited last. | 1687 | :ref:`ref-classes-native` class is inherited last. |
1696 | 1688 | ||
1697 | .. note:: | 1689 | .. note:: |
1698 | 1690 | ||
@@ -1714,7 +1706,7 @@ a couple different ways: | |||
1714 | specify any functionality specific to the respective native or target | 1706 | specify any functionality specific to the respective native or target |
1715 | case. | 1707 | case. |
1716 | 1708 | ||
1717 | Although applied differently, the :ref:`native <ref-classes-native>` class is used with both | 1709 | Although applied differently, the :ref:`ref-classes-native` class is used with both |
1718 | methods. The advantage of the second method is that you do not need to | 1710 | methods. The advantage of the second method is that you do not need to |
1719 | have two separate recipes (assuming you need both) for native and | 1711 | have two separate recipes (assuming you need both) for native and |
1720 | target. All common parts of the recipe are automatically shared. | 1712 | target. All common parts of the recipe are automatically shared. |
@@ -1724,7 +1716,7 @@ target. All common parts of the recipe are automatically shared. | |||
1724 | ``nativesdk`` | 1716 | ``nativesdk`` |
1725 | ============= | 1717 | ============= |
1726 | 1718 | ||
1727 | The :ref:`nativesdk <ref-classes-nativesdk>` class provides common functionality for recipes that | 1719 | The :ref:`ref-classes-nativesdk` class provides common functionality for recipes that |
1728 | wish to build tools to run as part of an SDK (i.e. tools that run on | 1720 | wish to build tools to run as part of an SDK (i.e. tools that run on |
1729 | :term:`SDKMACHINE`). | 1721 | :term:`SDKMACHINE`). |
1730 | 1722 | ||
@@ -1732,11 +1724,11 @@ You can create a recipe that builds tools that run on the SDK machine a | |||
1732 | couple different ways: | 1724 | couple different ways: |
1733 | 1725 | ||
1734 | - Create a ``nativesdk-myrecipe.bb`` recipe that inherits the | 1726 | - Create a ``nativesdk-myrecipe.bb`` recipe that inherits the |
1735 | :ref:`nativesdk <ref-classes-nativesdk>` class. If you use this method, you must order the | 1727 | :ref:`ref-classes-nativesdk` class. If you use this method, you must order the |
1736 | inherit statement in the recipe after all other inherit statements so | 1728 | inherit statement in the recipe after all other inherit statements so |
1737 | that the :ref:`nativesdk <ref-classes-nativesdk>` class is inherited last. | 1729 | that the :ref:`ref-classes-nativesdk` class is inherited last. |
1738 | 1730 | ||
1739 | - Create a :ref:`nativesdk <ref-classes-nativesdk>` variant of any recipe by adding the following:: | 1731 | - Create a :ref:`ref-classes-nativesdk` variant of any recipe by adding the following:: |
1740 | 1732 | ||
1741 | BBCLASSEXTEND = "nativesdk" | 1733 | BBCLASSEXTEND = "nativesdk" |
1742 | 1734 | ||
@@ -1755,7 +1747,7 @@ couple different ways: | |||
1755 | Not doing so can lead to subtle problems because there is code that | 1747 | Not doing so can lead to subtle problems because there is code that |
1756 | depends on the naming convention. | 1748 | depends on the naming convention. |
1757 | 1749 | ||
1758 | Although applied differently, the :ref:`nativesdk <ref-classes-nativesdk>` class is used with both | 1750 | Although applied differently, the :ref:`ref-classes-nativesdk` class is used with both |
1759 | methods. The advantage of the second method is that you do not need to | 1751 | methods. The advantage of the second method is that you do not need to |
1760 | have two separate recipes (assuming you need both) for the SDK machine | 1752 | have two separate recipes (assuming you need both) for the SDK machine |
1761 | and the target. All common parts of the recipe are automatically shared. | 1753 | and the target. All common parts of the recipe are automatically shared. |
@@ -1790,11 +1782,11 @@ section in the Yocto Project Development Tasks Manual. | |||
1790 | ``oelint`` | 1782 | ``oelint`` |
1791 | ========== | 1783 | ========== |
1792 | 1784 | ||
1793 | The :ref:`oelint <ref-classes-oelint>` class is an obsolete lint checking tool available in | 1785 | The :ref:`ref-classes-oelint` class is an obsolete lint checking tool available in |
1794 | ``meta/classes`` in the :term:`Source Directory`. | 1786 | ``meta/classes`` in the :term:`Source Directory`. |
1795 | 1787 | ||
1796 | There are some classes that could be generally useful in OE-Core but | 1788 | There are some classes that could be generally useful in OE-Core but |
1797 | are never actually used within OE-Core itself. The :ref:`oelint <ref-classes-oelint>` class is | 1789 | are never actually used within OE-Core itself. The :ref:`ref-classes-oelint` class is |
1798 | one such example. However, being aware of this class can reduce the | 1790 | one such example. However, being aware of this class can reduce the |
1799 | proliferation of different versions of similar classes across multiple | 1791 | proliferation of different versions of similar classes across multiple |
1800 | layers. | 1792 | layers. |
@@ -1808,7 +1800,7 @@ It's often desired in Embedded System design to have a read-only root filesystem | |||
1808 | But a lot of different applications might want to have read-write access to | 1800 | But a lot of different applications might want to have read-write access to |
1809 | some parts of a filesystem. It can be especially useful when your update mechanism | 1801 | some parts of a filesystem. It can be especially useful when your update mechanism |
1810 | overwrites the whole root filesystem, but you may want your application data to be preserved | 1802 | overwrites the whole root filesystem, but you may want your application data to be preserved |
1811 | between updates. The :ref:`overlayfs <ref-classes-overlayfs>` class provides a way | 1803 | between updates. The :ref:`ref-classes-overlayfs` class provides a way |
1812 | to achieve that by means of ``overlayfs`` and at the same time keeping the base | 1804 | to achieve that by means of ``overlayfs`` and at the same time keeping the base |
1813 | root filesystem read-only. | 1805 | root filesystem read-only. |
1814 | 1806 | ||
@@ -1848,7 +1840,7 @@ and then in your recipe:: | |||
1848 | On a practical note, your application recipe might require multiple | 1840 | On a practical note, your application recipe might require multiple |
1849 | overlays to be mounted before running to avoid writing to the underlying | 1841 | overlays to be mounted before running to avoid writing to the underlying |
1850 | file system (which can be forbidden in case of read-only file system) | 1842 | file system (which can be forbidden in case of read-only file system) |
1851 | To achieve that :ref:`overlayfs <ref-classes-overlayfs>` provides a ``systemd`` | 1843 | To achieve that :ref:`ref-classes-overlayfs` provides a ``systemd`` |
1852 | helper service for mounting overlays. This helper service is named | 1844 | helper service for mounting overlays. This helper service is named |
1853 | ``${PN}-overlays.service`` and can be depended on in your application recipe | 1845 | ``${PN}-overlays.service`` and can be depended on in your application recipe |
1854 | (named ``application`` in the following example) ``systemd`` unit by adding | 1846 | (named ``application`` in the following example) ``systemd`` unit by adding |
@@ -1861,7 +1853,7 @@ to the unit the following:: | |||
1861 | .. note:: | 1853 | .. note:: |
1862 | 1854 | ||
1863 | The class does not support the ``/etc`` directory itself, because ``systemd`` depends on it. | 1855 | The class does not support the ``/etc`` directory itself, because ``systemd`` depends on it. |
1864 | In order to get ``/etc`` in overlayfs, see :ref:`overlayfs-etc <ref-classes-overlayfs-etc>`. | 1856 | In order to get ``/etc`` in overlayfs, see :ref:`ref-classes-overlayfs-etc`. |
1865 | 1857 | ||
1866 | .. _ref-classes-overlayfs-etc: | 1858 | .. _ref-classes-overlayfs-etc: |
1867 | 1859 | ||
@@ -1913,7 +1905,7 @@ The class provides two options for ``/sbin/init`` generation: | |||
1913 | ``own-mirrors`` | 1905 | ``own-mirrors`` |
1914 | =============== | 1906 | =============== |
1915 | 1907 | ||
1916 | The :ref:`own-mirrors <ref-classes-own-mirrors>` class makes it easier to set up your own | 1908 | The :ref:`ref-classes-own-mirrors` class makes it easier to set up your own |
1917 | :term:`PREMIRRORS` from which to first fetch source | 1909 | :term:`PREMIRRORS` from which to first fetch source |
1918 | before attempting to fetch it from the upstream specified in | 1910 | before attempting to fetch it from the upstream specified in |
1919 | :term:`SRC_URI` within each recipe. | 1911 | :term:`SRC_URI` within each recipe. |
@@ -1932,18 +1924,16 @@ in :term:`SOURCE_MIRROR_URL`. | |||
1932 | ``package`` | 1924 | ``package`` |
1933 | =========== | 1925 | =========== |
1934 | 1926 | ||
1935 | The :ref:`package <ref-classes-package>` class supports generating packages from a build's | 1927 | The :ref:`ref-classes-package` class supports generating packages from a build's |
1936 | output. The core generic functionality is in ``package.bbclass``. The | 1928 | output. The core generic functionality is in ``package.bbclass``. The |
1937 | code specific to particular package types resides in these | 1929 | code specific to particular package types resides in these |
1938 | package-specific classes: | 1930 | package-specific classes: :ref:`ref-classes-package_deb`, |
1939 | :ref:`package_deb <ref-classes-package_deb>`, | 1931 | :ref:`ref-classes-package_rpm`, :ref:`ref-classes-package_ipk`, and |
1940 | :ref:`package_rpm <ref-classes-package_rpm>`, | 1932 | :ref:`ref-classes-package_tar`. |
1941 | :ref:`package_ipk <ref-classes-package_ipk>`, and | ||
1942 | :ref:`package_tar <ref-classes-package_tar>`. | ||
1943 | 1933 | ||
1944 | .. note:: | 1934 | .. note:: |
1945 | 1935 | ||
1946 | The :ref:`package_tar <ref-classes-package_tar>` class is broken and | 1936 | The :ref:`ref-classes-package_tar` class is broken and |
1947 | not supported. It is recommended that you do not use this class. | 1937 | not supported. It is recommended that you do not use this class. |
1948 | 1938 | ||
1949 | You can control the list of resulting package formats by using the | 1939 | You can control the list of resulting package formats by using the |
@@ -1969,7 +1959,7 @@ complete build of the package with all dependencies previously built. | |||
1969 | The reason for this discrepancy is because the RPM package manager | 1959 | The reason for this discrepancy is because the RPM package manager |
1970 | creates and processes more :term:`Metadata` than the IPK package | 1960 | creates and processes more :term:`Metadata` than the IPK package |
1971 | manager. Consequently, you might consider setting :term:`PACKAGE_CLASSES` to | 1961 | manager. Consequently, you might consider setting :term:`PACKAGE_CLASSES` to |
1972 | ":ref:`package_ipk <ref-classes-package_ipk>`" if you are building smaller systems. | 1962 | ":ref:`ref-classes-package_ipk`" if you are building smaller systems. |
1973 | 1963 | ||
1974 | Before making your package manager decision, however, you should | 1964 | Before making your package manager decision, however, you should |
1975 | consider some further things about using RPM: | 1965 | consider some further things about using RPM: |
@@ -1997,12 +1987,12 @@ at these two Yocto Project mailing list links: | |||
1997 | ``package_deb`` | 1987 | ``package_deb`` |
1998 | =============== | 1988 | =============== |
1999 | 1989 | ||
2000 | The :ref:`package_deb <ref-classes-package_deb>` class provides support for creating packages that | 1990 | The :ref:`ref-classes-package_deb` class provides support for creating packages that |
2001 | use the Debian (i.e. ``.deb``) file format. The class ensures the | 1991 | use the Debian (i.e. ``.deb``) file format. The class ensures the |
2002 | packages are written out in a ``.deb`` file format to the | 1992 | packages are written out in a ``.deb`` file format to the |
2003 | ``${``\ :term:`DEPLOY_DIR_DEB`\ ``}`` directory. | 1993 | ``${``\ :term:`DEPLOY_DIR_DEB`\ ``}`` directory. |
2004 | 1994 | ||
2005 | This class inherits the :ref:`package <ref-classes-package>` class and | 1995 | This class inherits the :ref:`ref-classes-package` class and |
2006 | is enabled through the :term:`PACKAGE_CLASSES` | 1996 | is enabled through the :term:`PACKAGE_CLASSES` |
2007 | variable in the ``local.conf`` file. | 1997 | variable in the ``local.conf`` file. |
2008 | 1998 | ||
@@ -2011,12 +2001,12 @@ variable in the ``local.conf`` file. | |||
2011 | ``package_ipk`` | 2001 | ``package_ipk`` |
2012 | =============== | 2002 | =============== |
2013 | 2003 | ||
2014 | The :ref:`package_ipk <ref-classes-package_ipk>` class provides support for creating packages that | 2004 | The :ref:`ref-classes-package_ipk` class provides support for creating packages that |
2015 | use the IPK (i.e. ``.ipk``) file format. The class ensures the packages | 2005 | use the IPK (i.e. ``.ipk``) file format. The class ensures the packages |
2016 | are written out in a ``.ipk`` file format to the | 2006 | are written out in a ``.ipk`` file format to the |
2017 | ``${``\ :term:`DEPLOY_DIR_IPK`\ ``}`` directory. | 2007 | ``${``\ :term:`DEPLOY_DIR_IPK`\ ``}`` directory. |
2018 | 2008 | ||
2019 | This class inherits the :ref:`package <ref-classes-package>` class and | 2009 | This class inherits the :ref:`ref-classes-package` class and |
2020 | is enabled through the :term:`PACKAGE_CLASSES` | 2010 | is enabled through the :term:`PACKAGE_CLASSES` |
2021 | variable in the ``local.conf`` file. | 2011 | variable in the ``local.conf`` file. |
2022 | 2012 | ||
@@ -2025,12 +2015,12 @@ variable in the ``local.conf`` file. | |||
2025 | ``package_rpm`` | 2015 | ``package_rpm`` |
2026 | =============== | 2016 | =============== |
2027 | 2017 | ||
2028 | The :ref:`package_rpm <ref-classes-package_rpm>` class provides support for creating packages that | 2018 | The :ref:`ref-classes-package_rpm` class provides support for creating packages that |
2029 | use the RPM (i.e. ``.rpm``) file format. The class ensures the packages | 2019 | use the RPM (i.e. ``.rpm``) file format. The class ensures the packages |
2030 | are written out in a ``.rpm`` file format to the | 2020 | are written out in a ``.rpm`` file format to the |
2031 | ``${``\ :term:`DEPLOY_DIR_RPM`\ ``}`` directory. | 2021 | ``${``\ :term:`DEPLOY_DIR_RPM`\ ``}`` directory. |
2032 | 2022 | ||
2033 | This class inherits the :ref:`package <ref-classes-package>` class and | 2023 | This class inherits the :ref:`ref-classes-package` class and |
2034 | is enabled through the :term:`PACKAGE_CLASSES` | 2024 | is enabled through the :term:`PACKAGE_CLASSES` |
2035 | variable in the ``local.conf`` file. | 2025 | variable in the ``local.conf`` file. |
2036 | 2026 | ||
@@ -2039,17 +2029,17 @@ variable in the ``local.conf`` file. | |||
2039 | ``package_tar`` | 2029 | ``package_tar`` |
2040 | =============== | 2030 | =============== |
2041 | 2031 | ||
2042 | The :ref:`package_tar <ref-classes-package_tar>` class provides support for creating tarballs. The | 2032 | The :ref:`ref-classes-package_tar` class provides support for creating tarballs. The |
2043 | class ensures the packages are written out in a tarball format to the | 2033 | class ensures the packages are written out in a tarball format to the |
2044 | ``${``\ :term:`DEPLOY_DIR_TAR`\ ``}`` directory. | 2034 | ``${``\ :term:`DEPLOY_DIR_TAR`\ ``}`` directory. |
2045 | 2035 | ||
2046 | This class inherits the :ref:`package <ref-classes-package>` class and | 2036 | This class inherits the :ref:`ref-classes-package` class and |
2047 | is enabled through the :term:`PACKAGE_CLASSES` | 2037 | is enabled through the :term:`PACKAGE_CLASSES` |
2048 | variable in the ``local.conf`` file. | 2038 | variable in the ``local.conf`` file. |
2049 | 2039 | ||
2050 | .. note:: | 2040 | .. note:: |
2051 | 2041 | ||
2052 | You cannot specify the :ref:`package_tar <ref-classes-package_tar>` class first using the | 2042 | You cannot specify the :ref:`ref-classes-package_tar` class first using the |
2053 | :term:`PACKAGE_CLASSES` variable. You must use ``.deb``, ``.ipk``, or ``.rpm`` | 2043 | :term:`PACKAGE_CLASSES` variable. You must use ``.deb``, ``.ipk``, or ``.rpm`` |
2054 | file formats for your image or SDK. | 2044 | file formats for your image or SDK. |
2055 | 2045 | ||
@@ -2058,20 +2048,20 @@ variable in the ``local.conf`` file. | |||
2058 | ``packagedata`` | 2048 | ``packagedata`` |
2059 | =============== | 2049 | =============== |
2060 | 2050 | ||
2061 | The :ref:`packagedata <ref-classes-packagedata>` class provides common functionality for reading | 2051 | The :ref:`ref-classes-packagedata` class provides common functionality for reading |
2062 | ``pkgdata`` files found in :term:`PKGDATA_DIR`. These | 2052 | ``pkgdata`` files found in :term:`PKGDATA_DIR`. These |
2063 | files contain information about each output package produced by the | 2053 | files contain information about each output package produced by the |
2064 | OpenEmbedded build system. | 2054 | OpenEmbedded build system. |
2065 | 2055 | ||
2066 | This class is enabled by default because it is inherited by the | 2056 | This class is enabled by default because it is inherited by the |
2067 | :ref:`package <ref-classes-package>` class. | 2057 | :ref:`ref-classes-package` class. |
2068 | 2058 | ||
2069 | .. _ref-classes-packagegroup: | 2059 | .. _ref-classes-packagegroup: |
2070 | 2060 | ||
2071 | ``packagegroup`` | 2061 | ``packagegroup`` |
2072 | ================ | 2062 | ================ |
2073 | 2063 | ||
2074 | The :ref:`packagegroup <ref-classes-packagegroup>` class sets default values appropriate for package | 2064 | The :ref:`ref-classes-packagegroup` class sets default values appropriate for package |
2075 | group recipes (e.g. :term:`PACKAGES`, :term:`PACKAGE_ARCH`, :term:`ALLOW_EMPTY`, and | 2065 | group recipes (e.g. :term:`PACKAGES`, :term:`PACKAGE_ARCH`, :term:`ALLOW_EMPTY`, and |
2076 | so forth). It is highly recommended that all package group recipes | 2066 | so forth). It is highly recommended that all package group recipes |
2077 | inherit this class. | 2067 | inherit this class. |
@@ -2087,18 +2077,18 @@ Previously, this class was called the ``task`` class. | |||
2087 | ``patch`` | 2077 | ``patch`` |
2088 | ========= | 2078 | ========= |
2089 | 2079 | ||
2090 | The :ref:`patch <ref-classes-patch>` class provides all functionality for applying patches | 2080 | The :ref:`ref-classes-patch` class provides all functionality for applying patches |
2091 | during the :ref:`ref-tasks-patch` task. | 2081 | during the :ref:`ref-tasks-patch` task. |
2092 | 2082 | ||
2093 | This class is enabled by default because it is inherited by the | 2083 | This class is enabled by default because it is inherited by the |
2094 | :ref:`base <ref-classes-base>` class. | 2084 | :ref:`ref-classes-base` class. |
2095 | 2085 | ||
2096 | .. _ref-classes-perlnative: | 2086 | .. _ref-classes-perlnative: |
2097 | 2087 | ||
2098 | ``perlnative`` | 2088 | ``perlnative`` |
2099 | ============== | 2089 | ============== |
2100 | 2090 | ||
2101 | When inherited by a recipe, the :ref:`perlnative <ref-classes-perlnative>` class supports using the | 2091 | When inherited by a recipe, the :ref:`ref-classes-perlnative` class supports using the |
2102 | native version of Perl built by the build system rather than using the | 2092 | native version of Perl built by the build system rather than using the |
2103 | version provided by the build host. | 2093 | version provided by the build host. |
2104 | 2094 | ||
@@ -2107,14 +2097,14 @@ version provided by the build host. | |||
2107 | ``pypi`` | 2097 | ``pypi`` |
2108 | ======== | 2098 | ======== |
2109 | 2099 | ||
2110 | The :ref:`pypi <ref-classes-pypi>` class sets variables appropriately for recipes that build | 2100 | The :ref:`ref-classes-pypi` class sets variables appropriately for recipes that build |
2111 | Python modules from `PyPI <https://pypi.org/>`__, the Python Package Index. | 2101 | Python modules from `PyPI <https://pypi.org/>`__, the Python Package Index. |
2112 | By default it determines the PyPI package name based upon :term:`BPN` | 2102 | By default it determines the PyPI package name based upon :term:`BPN` |
2113 | (stripping the "python-" or "python3-" prefix off if present), however in | 2103 | (stripping the "python-" or "python3-" prefix off if present), however in |
2114 | some cases you may need to set it manually in the recipe by setting | 2104 | some cases you may need to set it manually in the recipe by setting |
2115 | :term:`PYPI_PACKAGE`. | 2105 | :term:`PYPI_PACKAGE`. |
2116 | 2106 | ||
2117 | Variables set by the :ref:`pypi <ref-classes-pypi>` class include :term:`SRC_URI`, :term:`SECTION`, | 2107 | Variables set by the :ref:`ref-classes-pypi` class include :term:`SRC_URI`, :term:`SECTION`, |
2118 | :term:`HOMEPAGE`, :term:`UPSTREAM_CHECK_URI`, :term:`UPSTREAM_CHECK_REGEX` | 2108 | :term:`HOMEPAGE`, :term:`UPSTREAM_CHECK_URI`, :term:`UPSTREAM_CHECK_REGEX` |
2119 | and :term:`CVE_PRODUCT`. | 2109 | and :term:`CVE_PRODUCT`. |
2120 | 2110 | ||
@@ -2123,7 +2113,7 @@ and :term:`CVE_PRODUCT`. | |||
2123 | ``python_flit_core`` | 2113 | ``python_flit_core`` |
2124 | ==================== | 2114 | ==================== |
2125 | 2115 | ||
2126 | The :ref:`python_flit_core <ref-classes-python_flit_core>` class enables building Python modules which declare | 2116 | The :ref:`ref-classes-python_flit_core` class enables building Python modules which declare |
2127 | the `PEP-517 <https://www.python.org/dev/peps/pep-0517/>`__ compliant | 2117 | the `PEP-517 <https://www.python.org/dev/peps/pep-0517/>`__ compliant |
2128 | ``flit_core.buildapi`` ``build-backend`` in the ``[build-system]`` | 2118 | ``flit_core.buildapi`` ``build-backend`` in the ``[build-system]`` |
2129 | section of ``pyproject.toml`` (See `PEP-518 <https://www.python.org/dev/peps/pep-0518/>`__). | 2119 | section of ``pyproject.toml`` (See `PEP-518 <https://www.python.org/dev/peps/pep-0518/>`__). |
@@ -2131,40 +2121,39 @@ section of ``pyproject.toml`` (See `PEP-518 <https://www.python.org/dev/peps/pep | |||
2131 | Python modules built with ``flit_core.buildapi`` are pure Python (no | 2121 | Python modules built with ``flit_core.buildapi`` are pure Python (no |
2132 | ``C`` or ``Rust`` extensions). | 2122 | ``C`` or ``Rust`` extensions). |
2133 | 2123 | ||
2134 | Internally this uses the :ref:`python_pep517 <ref-classes-python_pep517>` class. | 2124 | Internally this uses the :ref:`ref-classes-python_pep517` class. |
2135 | 2125 | ||
2136 | .. _ref-classes-python_pep517: | 2126 | .. _ref-classes-python_pep517: |
2137 | 2127 | ||
2138 | ``python_pep517`` | 2128 | ``python_pep517`` |
2139 | ================= | 2129 | ================= |
2140 | 2130 | ||
2141 | The :ref:`python_pep517 <ref-classes-python_pep517>` class builds and installs a Python ``wheel`` binary | 2131 | The :ref:`ref-classes-python_pep517` class builds and installs a Python ``wheel`` binary |
2142 | archive (see `PEP-517 <https://peps.python.org/pep-0517/>`__). | 2132 | archive (see `PEP-517 <https://peps.python.org/pep-0517/>`__). |
2143 | 2133 | ||
2144 | Recipes wouldn't inherit this directly, instead typically another class will | 2134 | Recipes wouldn't inherit this directly, instead typically another class will |
2145 | inherit this and add the relevant native dependencies. | 2135 | inherit this and add the relevant native dependencies. |
2146 | 2136 | ||
2147 | Examples of classes which do this are :ref:`python_flit_core | 2137 | Examples of classes which do this are :ref:`ref-classes-python_flit_core`, |
2148 | <ref-classes-python_flit_core>`, :ref:`python_setuptools_build_meta | 2138 | :ref:`ref-classes-python_setuptools_build_meta`, and |
2149 | <ref-classes-python_setuptools_build_meta>`, and :ref:`python_poetry_core | 2139 | :ref:`ref-classes-python_poetry_core`. |
2150 | <ref-classes-python_poetry_core>`. | ||
2151 | 2140 | ||
2152 | .. _ref-classes-python_poetry_core: | 2141 | .. _ref-classes-python_poetry_core: |
2153 | 2142 | ||
2154 | ``python_poetry_core`` | 2143 | ``python_poetry_core`` |
2155 | ====================== | 2144 | ====================== |
2156 | 2145 | ||
2157 | The :ref:`python_poetry_core <ref-classes-python_poetry_core>` class enables building Python modules which use the | 2146 | The :ref:`ref-classes-python_poetry_core` class enables building Python modules which use the |
2158 | `Poetry Core <https://python-poetry.org>`__ build system. | 2147 | `Poetry Core <https://python-poetry.org>`__ build system. |
2159 | 2148 | ||
2160 | Internally this uses the :ref:`python_pep517 <ref-classes-python_pep517>` class. | 2149 | Internally this uses the :ref:`ref-classes-python_pep517` class. |
2161 | 2150 | ||
2162 | .. _ref-classes-pixbufcache: | 2151 | .. _ref-classes-pixbufcache: |
2163 | 2152 | ||
2164 | ``pixbufcache`` | 2153 | ``pixbufcache`` |
2165 | =============== | 2154 | =============== |
2166 | 2155 | ||
2167 | The :ref:`pixbufcache <ref-classes-pixbufcache>` class generates the proper post-install and | 2156 | The :ref:`ref-classes-pixbufcache` class generates the proper post-install and |
2168 | post-remove (postinst/postrm) scriptlets for packages that install | 2157 | post-remove (postinst/postrm) scriptlets for packages that install |
2169 | pixbuf loaders, which are used with ``gdk-pixbuf``. These scriptlets | 2158 | pixbuf loaders, which are used with ``gdk-pixbuf``. These scriptlets |
2170 | call ``update_pixbuf_cache`` to add the pixbuf loaders to the cache. | 2159 | call ``update_pixbuf_cache`` to add the pixbuf loaders to the cache. |
@@ -2182,13 +2171,13 @@ containing the loaders. | |||
2182 | ``pkgconfig`` | 2171 | ``pkgconfig`` |
2183 | ============= | 2172 | ============= |
2184 | 2173 | ||
2185 | The :ref:`pkgconfig <ref-classes-pkgconfig>` class provides a standard way to get header and | 2174 | The :ref:`ref-classes-pkgconfig` class provides a standard way to get header and |
2186 | library information by using ``pkg-config``. This class aims to smooth | 2175 | library information by using ``pkg-config``. This class aims to smooth |
2187 | integration of ``pkg-config`` into libraries that use it. | 2176 | integration of ``pkg-config`` into libraries that use it. |
2188 | 2177 | ||
2189 | During staging, BitBake installs ``pkg-config`` data into the | 2178 | During staging, BitBake installs ``pkg-config`` data into the |
2190 | ``sysroots/`` directory. By making use of sysroot functionality within | 2179 | ``sysroots/`` directory. By making use of sysroot functionality within |
2191 | ``pkg-config``, the :ref:`pkgconfig <ref-classes-pkgconfig>` class no longer has to manipulate the | 2180 | ``pkg-config``, the :ref:`ref-classes-pkgconfig` class no longer has to manipulate the |
2192 | files. | 2181 | files. |
2193 | 2182 | ||
2194 | .. _ref-classes-populate-sdk: | 2183 | .. _ref-classes-populate-sdk: |
@@ -2196,7 +2185,7 @@ files. | |||
2196 | ``populate_sdk`` | 2185 | ``populate_sdk`` |
2197 | ================ | 2186 | ================ |
2198 | 2187 | ||
2199 | The :ref:`populate_sdk <ref-classes-populate-sdk>` class provides support for SDK-only recipes. For | 2188 | The :ref:`ref-classes-populate-sdk` class provides support for SDK-only recipes. For |
2200 | information on advantages gained when building a cross-development | 2189 | information on advantages gained when building a cross-development |
2201 | toolchain using the :ref:`ref-tasks-populate_sdk` | 2190 | toolchain using the :ref:`ref-tasks-populate_sdk` |
2202 | task, see the ":ref:`sdk-manual/appendix-obtain:building an sdk installer`" | 2191 | task, see the ":ref:`sdk-manual/appendix-obtain:building an sdk installer`" |
@@ -2208,7 +2197,7 @@ Software Development Kit (eSDK) manual. | |||
2208 | ``populate_sdk_*`` | 2197 | ``populate_sdk_*`` |
2209 | ================== | 2198 | ================== |
2210 | 2199 | ||
2211 | The :ref:`populate_sdk_* <ref-classes-populate-sdk-*>` classes support SDK creation and consist of the | 2200 | The :ref:`ref-classes-populate-sdk-*` classes support SDK creation and consist of the |
2212 | following classes: | 2201 | following classes: |
2213 | 2202 | ||
2214 | - :ref:`populate_sdk_base <ref-classes-populate-sdk-*>`: The base class supporting SDK creation under | 2203 | - :ref:`populate_sdk_base <ref-classes-populate-sdk-*>`: The base class supporting SDK creation under |
@@ -2265,7 +2254,7 @@ Software Development Kit (eSDK) manual. | |||
2265 | ``prexport`` | 2254 | ``prexport`` |
2266 | ============ | 2255 | ============ |
2267 | 2256 | ||
2268 | The :ref:`prexport <ref-classes-prexport>` class provides functionality for exporting | 2257 | The :ref:`ref-classes-prexport` class provides functionality for exporting |
2269 | :term:`PR` values. | 2258 | :term:`PR` values. |
2270 | 2259 | ||
2271 | .. note:: | 2260 | .. note:: |
@@ -2278,7 +2267,7 @@ The :ref:`prexport <ref-classes-prexport>` class provides functionality for expo | |||
2278 | ``primport`` | 2267 | ``primport`` |
2279 | ============ | 2268 | ============ |
2280 | 2269 | ||
2281 | The :ref:`primport <ref-classes-primport>` class provides functionality for importing | 2270 | The :ref:`ref-classes-primport` class provides functionality for importing |
2282 | :term:`PR` values. | 2271 | :term:`PR` values. |
2283 | 2272 | ||
2284 | .. note:: | 2273 | .. note:: |
@@ -2291,13 +2280,13 @@ The :ref:`primport <ref-classes-primport>` class provides functionality for impo | |||
2291 | ``prserv`` | 2280 | ``prserv`` |
2292 | ========== | 2281 | ========== |
2293 | 2282 | ||
2294 | The :ref:`prserv <ref-classes-prserv>` class provides functionality for using a :ref:`PR | 2283 | The :ref:`ref-classes-prserv` class provides functionality for using a :ref:`PR |
2295 | service <dev-manual/packages:working with a pr service>` in order to | 2284 | service <dev-manual/packages:working with a pr service>` in order to |
2296 | automatically manage the incrementing of the :term:`PR` | 2285 | automatically manage the incrementing of the :term:`PR` |
2297 | variable for each recipe. | 2286 | variable for each recipe. |
2298 | 2287 | ||
2299 | This class is enabled by default because it is inherited by the | 2288 | This class is enabled by default because it is inherited by the |
2300 | :ref:`package <ref-classes-package>` class. However, the OpenEmbedded | 2289 | :ref:`ref-classes-package` class. However, the OpenEmbedded |
2301 | build system will not enable the functionality of this class unless | 2290 | build system will not enable the functionality of this class unless |
2302 | :term:`PRSERV_HOST` has been set. | 2291 | :term:`PRSERV_HOST` has been set. |
2303 | 2292 | ||
@@ -2306,7 +2295,7 @@ build system will not enable the functionality of this class unless | |||
2306 | ``ptest`` | 2295 | ``ptest`` |
2307 | ========= | 2296 | ========= |
2308 | 2297 | ||
2309 | The :ref:`ptest <ref-classes-ptest>` class provides functionality for packaging and installing | 2298 | The :ref:`ref-classes-ptest` class provides functionality for packaging and installing |
2310 | runtime tests for recipes that build software that provides these tests. | 2299 | runtime tests for recipes that build software that provides these tests. |
2311 | 2300 | ||
2312 | This class is intended to be inherited by individual recipes. However, | 2301 | This class is intended to be inherited by individual recipes. However, |
@@ -2333,7 +2322,7 @@ section in the Yocto Project Development Tasks Manual. | |||
2333 | ``python3-dir`` | 2322 | ``python3-dir`` |
2334 | =============== | 2323 | =============== |
2335 | 2324 | ||
2336 | The :ref:`python3-dir <ref-classes-python3-dir>` class provides the base version, location, and site | 2325 | The :ref:`ref-classes-python3-dir` class provides the base version, location, and site |
2337 | package location for Python 3. | 2326 | package location for Python 3. |
2338 | 2327 | ||
2339 | .. _ref-classes-python3native: | 2328 | .. _ref-classes-python3native: |
@@ -2341,7 +2330,7 @@ package location for Python 3. | |||
2341 | ``python3native`` | 2330 | ``python3native`` |
2342 | ================= | 2331 | ================= |
2343 | 2332 | ||
2344 | The :ref:`python3native <ref-classes-python3native>` class supports using the native version of Python | 2333 | The :ref:`ref-classes-python3native` class supports using the native version of Python |
2345 | 3 built by the build system rather than support of the version provided | 2334 | 3 built by the build system rather than support of the version provided |
2346 | by the build host. | 2335 | by the build host. |
2347 | 2336 | ||
@@ -2350,7 +2339,7 @@ by the build host. | |||
2350 | ``python3targetconfig`` | 2339 | ``python3targetconfig`` |
2351 | ======================= | 2340 | ======================= |
2352 | 2341 | ||
2353 | The :ref:`python3targetconfig <ref-classes-python3targetconfig>` class supports using the native version of Python | 2342 | The :ref:`ref-classes-python3targetconfig` class supports using the native version of Python |
2354 | 3 built by the build system rather than support of the version provided | 2343 | 3 built by the build system rather than support of the version provided |
2355 | by the build host, except that the configuration for the target machine | 2344 | by the build host, except that the configuration for the target machine |
2356 | is accessible (such as correct installation directories). This also adds a | 2345 | is accessible (such as correct installation directories). This also adds a |
@@ -2362,7 +2351,7 @@ in order to avoid unnecessarily lengthening builds. | |||
2362 | ``qemu`` | 2351 | ``qemu`` |
2363 | ======== | 2352 | ======== |
2364 | 2353 | ||
2365 | The :ref:`qemu <ref-classes-qemu>` class provides functionality for recipes that either need | 2354 | The :ref:`ref-classes-qemu` class provides functionality for recipes that either need |
2366 | QEMU or test for the existence of QEMU. Typically, this class is used to | 2355 | QEMU or test for the existence of QEMU. Typically, this class is used to |
2367 | run programs for a target system on the build host using QEMU's | 2356 | run programs for a target system on the build host using QEMU's |
2368 | application emulation mode. | 2357 | application emulation mode. |
@@ -2372,7 +2361,7 @@ application emulation mode. | |||
2372 | ``recipe_sanity`` | 2361 | ``recipe_sanity`` |
2373 | ================= | 2362 | ================= |
2374 | 2363 | ||
2375 | The :ref:`recipe_sanity <ref-classes-recipe_sanity>` class checks for the presence of any host system | 2364 | The :ref:`ref-classes-recipe_sanity` class checks for the presence of any host system |
2376 | recipe prerequisites that might affect the build (e.g. variables that | 2365 | recipe prerequisites that might affect the build (e.g. variables that |
2377 | are set or software that is present). | 2366 | are set or software that is present). |
2378 | 2367 | ||
@@ -2381,19 +2370,18 @@ are set or software that is present). | |||
2381 | ``relocatable`` | 2370 | ``relocatable`` |
2382 | =============== | 2371 | =============== |
2383 | 2372 | ||
2384 | The :ref:`relocatable <ref-classes-relocatable>` class enables relocation of binaries when they are | 2373 | The :ref:`ref-classes-relocatable` class enables relocation of binaries when they are |
2385 | installed into the sysroot. | 2374 | installed into the sysroot. |
2386 | 2375 | ||
2387 | This class makes use of the :ref:`chrpath <ref-classes-chrpath>` class | 2376 | This class makes use of the :ref:`ref-classes-chrpath` class and is used by |
2388 | and is used by both the :ref:`cross <ref-classes-cross>` and | 2377 | both the :ref:`ref-classes-cross` and :ref:`ref-classes-native` classes. |
2389 | :ref:`native <ref-classes-native>` classes. | ||
2390 | 2378 | ||
2391 | .. _ref-classes-remove-libtool: | 2379 | .. _ref-classes-remove-libtool: |
2392 | 2380 | ||
2393 | ``remove-libtool`` | 2381 | ``remove-libtool`` |
2394 | ================== | 2382 | ================== |
2395 | 2383 | ||
2396 | The :ref:`remove-libtool <ref-classes-remove-libtool>` class adds a post function to the | 2384 | The :ref:`ref-classes-remove-libtool` class adds a post function to the |
2397 | :ref:`ref-tasks-install` task to remove all ``.la`` files | 2385 | :ref:`ref-tasks-install` task to remove all ``.la`` files |
2398 | installed by ``libtool``. Removing these files results in them being | 2386 | installed by ``libtool``. Removing these files results in them being |
2399 | absent from both the sysroot and target packages. | 2387 | absent from both the sysroot and target packages. |
@@ -2405,14 +2393,14 @@ override the removal by setting ``REMOVE_LIBTOOL_LA`` to "0" as follows:: | |||
2405 | 2393 | ||
2406 | .. note:: | 2394 | .. note:: |
2407 | 2395 | ||
2408 | The :ref:`remove-libtool <ref-classes-remove-libtool>` class is not enabled by default. | 2396 | The :ref:`ref-classes-remove-libtool` class is not enabled by default. |
2409 | 2397 | ||
2410 | .. _ref-classes-report-error: | 2398 | .. _ref-classes-report-error: |
2411 | 2399 | ||
2412 | ``report-error`` | 2400 | ``report-error`` |
2413 | ================ | 2401 | ================ |
2414 | 2402 | ||
2415 | The :ref:`report-error <ref-classes-report-error>` class supports enabling the :ref:`error reporting | 2403 | The :ref:`ref-classes-report-error` class supports enabling the :ref:`error reporting |
2416 | tool <dev-manual/error-reporting-tool:using the error reporting tool>`", | 2404 | tool <dev-manual/error-reporting-tool:using the error reporting tool>`", |
2417 | which allows you to submit build error information to a central database. | 2405 | which allows you to submit build error information to a central database. |
2418 | 2406 | ||
@@ -2427,7 +2415,7 @@ are created and stored in | |||
2427 | ``rm_work`` | 2415 | ``rm_work`` |
2428 | =========== | 2416 | =========== |
2429 | 2417 | ||
2430 | The :ref:`rm_work <ref-classes-rm-work>` class supports deletion of temporary workspace, which | 2418 | The :ref:`ref-classes-rm-work` class supports deletion of temporary workspace, which |
2431 | can ease your hard drive demands during builds. | 2419 | can ease your hard drive demands during builds. |
2432 | 2420 | ||
2433 | The OpenEmbedded build system can use a substantial amount of disk space | 2421 | The OpenEmbedded build system can use a substantial amount of disk space |
@@ -2436,19 +2424,18 @@ under the ``${TMPDIR}/work`` directory for each recipe. Once the build | |||
2436 | system generates the packages for a recipe, the work files for that | 2424 | system generates the packages for a recipe, the work files for that |
2437 | recipe are no longer needed. However, by default, the build system | 2425 | recipe are no longer needed. However, by default, the build system |
2438 | preserves these files for inspection and possible debugging purposes. If | 2426 | preserves these files for inspection and possible debugging purposes. If |
2439 | you would rather have these files deleted to save disk space as the | 2427 | you would rather have these files deleted to save disk space as the build |
2440 | build progresses, you can enable :ref:`rm_work <ref-classes-rm-work>` by adding the following to | 2428 | progresses, you can enable :ref:`ref-classes-rm-work` by adding the following to |
2441 | your ``local.conf`` file, which is found in the :term:`Build Directory`:: | 2429 | your ``local.conf`` file, which is found in the :term:`Build Directory`:: |
2442 | 2430 | ||
2443 | INHERIT += "rm_work" | 2431 | INHERIT += "rm_work" |
2444 | 2432 | ||
2445 | If you are | 2433 | If you are modifying and building source code out of the work directory for a |
2446 | modifying and building source code out of the work directory for a | 2434 | recipe, enabling :ref:`ref-classes-rm-work` will potentially result in your |
2447 | recipe, enabling :ref:`rm_work <ref-classes-rm-work>` will potentially result in your changes to | 2435 | changes to the source being lost. To exclude some recipes from having their work |
2448 | the source being lost. To exclude some recipes from having their work | 2436 | directories deleted by :ref:`ref-classes-rm-work`, you can add the names of the |
2449 | directories deleted by :ref:`rm_work <ref-classes-rm-work>`, you can add the names of the recipe | 2437 | recipe or recipes you are working on to the :term:`RM_WORK_EXCLUDE` variable, |
2450 | or recipes you are working on to the :term:`RM_WORK_EXCLUDE` variable, which | 2438 | which can also be set in your ``local.conf`` file. Here is an example:: |
2451 | can also be set in your ``local.conf`` file. Here is an example:: | ||
2452 | 2439 | ||
2453 | RM_WORK_EXCLUDE += "busybox glibc" | 2440 | RM_WORK_EXCLUDE += "busybox glibc" |
2454 | 2441 | ||
@@ -2457,7 +2444,7 @@ can also be set in your ``local.conf`` file. Here is an example:: | |||
2457 | ``rootfs*`` | 2444 | ``rootfs*`` |
2458 | =========== | 2445 | =========== |
2459 | 2446 | ||
2460 | The :ref:`rootfs* <ref-classes-rootfs*>` classes support creating the root filesystem for an | 2447 | The :ref:`ref-classes-rootfs*` classes support creating the root filesystem for an |
2461 | image and consist of the following classes: | 2448 | image and consist of the following classes: |
2462 | 2449 | ||
2463 | - The :ref:`rootfs-postcommands <ref-classes-rootfs*>` class, which defines filesystem | 2450 | - The :ref:`rootfs-postcommands <ref-classes-rootfs*>` class, which defines filesystem |
@@ -2476,8 +2463,8 @@ image and consist of the following classes: | |||
2476 | on the build host directly into the root filesystem. | 2463 | on the build host directly into the root filesystem. |
2477 | 2464 | ||
2478 | The root filesystem is created from packages using one of the | 2465 | The root filesystem is created from packages using one of the |
2479 | :ref:`rootfs*.bbclass <ref-classes-rootfs*>` files as determined by the | 2466 | :ref:`ref-classes-rootfs*` files as determined by the :term:`PACKAGE_CLASSES` |
2480 | :term:`PACKAGE_CLASSES` variable. | 2467 | variable. |
2481 | 2468 | ||
2482 | For information on how root filesystem images are created, see the | 2469 | For information on how root filesystem images are created, see the |
2483 | ":ref:`overview-manual/concepts:image generation`" | 2470 | ":ref:`overview-manual/concepts:image generation`" |
@@ -2488,7 +2475,7 @@ section in the Yocto Project Overview and Concepts Manual. | |||
2488 | ``sanity`` | 2475 | ``sanity`` |
2489 | ========== | 2476 | ========== |
2490 | 2477 | ||
2491 | The :ref:`sanity <ref-classes-sanity>` class checks to see if prerequisite software is present | 2478 | The :ref:`ref-classes-sanity` class checks to see if prerequisite software is present |
2492 | on the host system so that users can be notified of potential problems | 2479 | on the host system so that users can be notified of potential problems |
2493 | that might affect their build. The class also performs basic user | 2480 | that might affect their build. The class also performs basic user |
2494 | configuration checks from the ``local.conf`` configuration file to | 2481 | configuration checks from the ``local.conf`` configuration file to |
@@ -2500,17 +2487,17 @@ usually determines whether to include this class. | |||
2500 | ``scons`` | 2487 | ``scons`` |
2501 | ========= | 2488 | ========= |
2502 | 2489 | ||
2503 | The :ref:`scons <ref-classes-scons>` class supports recipes that need to build software that | 2490 | The :ref:`ref-classes-scons` class supports recipes that need to build software |
2504 | uses the SCons build system. You can use the | 2491 | that uses the SCons build system. You can use the :term:`EXTRA_OESCONS` |
2505 | :term:`EXTRA_OESCONS` variable to specify | 2492 | variable to specify additional configuration options you want to pass SCons |
2506 | additional configuration options you want to pass SCons command line. | 2493 | command line. |
2507 | 2494 | ||
2508 | .. _ref-classes-sdl: | 2495 | .. _ref-classes-sdl: |
2509 | 2496 | ||
2510 | ``sdl`` | 2497 | ``sdl`` |
2511 | ======= | 2498 | ======= |
2512 | 2499 | ||
2513 | The :ref:`sdl <ref-classes-sdl>` class supports recipes that need to build software that uses | 2500 | The :ref:`ref-classes-sdl` class supports recipes that need to build software that uses |
2514 | the Simple DirectMedia Layer (SDL) library. | 2501 | the Simple DirectMedia Layer (SDL) library. |
2515 | 2502 | ||
2516 | .. _ref-classes-python_setuptools_build_meta: | 2503 | .. _ref-classes-python_setuptools_build_meta: |
@@ -2518,8 +2505,8 @@ the Simple DirectMedia Layer (SDL) library. | |||
2518 | ``python_setuptools_build_meta`` | 2505 | ``python_setuptools_build_meta`` |
2519 | ================================ | 2506 | ================================ |
2520 | 2507 | ||
2521 | The :ref:`python_setuptools_build_meta <ref-classes-python_setuptools_build_meta>` class enables building Python modules which | 2508 | The :ref:`ref-classes-python_setuptools_build_meta` class enables building |
2522 | declare the | 2509 | Python modules which declare the |
2523 | `PEP-517 <https://www.python.org/dev/peps/pep-0517/>`__ compliant | 2510 | `PEP-517 <https://www.python.org/dev/peps/pep-0517/>`__ compliant |
2524 | ``setuptools.build_meta`` ``build-backend`` in the ``[build-system]`` | 2511 | ``setuptools.build_meta`` ``build-backend`` in the ``[build-system]`` |
2525 | section of ``pyproject.toml`` (See `PEP-518 <https://www.python.org/dev/peps/pep-0518/>`__). | 2512 | section of ``pyproject.toml`` (See `PEP-518 <https://www.python.org/dev/peps/pep-0518/>`__). |
@@ -2527,21 +2514,22 @@ section of ``pyproject.toml`` (See `PEP-518 <https://www.python.org/dev/peps/pep | |||
2527 | Python modules built with ``setuptools.build_meta`` can be pure Python or | 2514 | Python modules built with ``setuptools.build_meta`` can be pure Python or |
2528 | include ``C`` or ``Rust`` extensions). | 2515 | include ``C`` or ``Rust`` extensions). |
2529 | 2516 | ||
2530 | Internally this uses the :ref:`python_pep517 <ref-classes-python_pep517>` class. | 2517 | Internally this uses the :ref:`ref-classes-python_pep517` class. |
2531 | 2518 | ||
2532 | .. _ref-classes-setuptools3: | 2519 | .. _ref-classes-setuptools3: |
2533 | 2520 | ||
2534 | ``setuptools3`` | 2521 | ``setuptools3`` |
2535 | =============== | 2522 | =============== |
2536 | 2523 | ||
2537 | The :ref:`setuptools3 <ref-classes-setuptools3>` class supports Python version 3.x extensions that | 2524 | The :ref:`ref-classes-setuptools3` class supports Python version 3.x extensions |
2538 | use build systems based on ``setuptools`` (e.g. only have a ``setup.py`` and | 2525 | that use build systems based on ``setuptools`` (e.g. only have a ``setup.py`` |
2539 | have not migrated to the official ``pyproject.toml`` format). If your recipe | 2526 | and have not migrated to the official ``pyproject.toml`` format). If your recipe |
2540 | uses these build systems, the recipe needs to inherit the :ref:`setuptools3 <ref-classes-setuptools3>` class. | 2527 | uses these build systems, the recipe needs to inherit the |
2528 | :ref:`ref-classes-setuptools3` class. | ||
2541 | 2529 | ||
2542 | .. note:: | 2530 | .. note:: |
2543 | 2531 | ||
2544 | The :ref:`setuptools3 <ref-classes-setuptools3>` class :ref:`ref-tasks-compile` task now calls | 2532 | The :ref:`ref-classes-setuptools3` class :ref:`ref-tasks-compile` task now calls |
2545 | ``setup.py bdist_wheel`` to build the ``wheel`` binary archive format | 2533 | ``setup.py bdist_wheel`` to build the ``wheel`` binary archive format |
2546 | (See `PEP-427 <https://www.python.org/dev/peps/pep-0427/>`__). | 2534 | (See `PEP-427 <https://www.python.org/dev/peps/pep-0427/>`__). |
2547 | 2535 | ||
@@ -2552,22 +2540,22 @@ uses these build systems, the recipe needs to inherit the :ref:`setuptools3 <ref | |||
2552 | 2540 | ||
2553 | .. note:: | 2541 | .. note:: |
2554 | 2542 | ||
2555 | The :ref:`setuptools3 <ref-classes-setuptools3>` class :ref:`ref-tasks-install` task now installs the ``wheel`` | 2543 | The :ref:`ref-classes-setuptools3` class :ref:`ref-tasks-install` task now |
2556 | binary archive. In current versions of ``setuptools`` the legacy ``setup.py | 2544 | installs the ``wheel`` binary archive. In current versions of |
2557 | install`` method is deprecated. If the ``setup.py`` cannot be used with | 2545 | ``setuptools`` the legacy ``setup.py install`` method is deprecated. If |
2558 | wheels, for example it creates files outside of the Python module or | 2546 | the ``setup.py`` cannot be used with wheels, for example it creates files |
2559 | standard entry points, then :ref:`setuptools3_legacy | 2547 | outside of the Python module or standard entry points, then |
2560 | <ref-classes-setuptools3_legacy>` should be used. | 2548 | :ref:`ref-classes-setuptools3_legacy` should be used. |
2561 | 2549 | ||
2562 | .. _ref-classes-setuptools3_legacy: | 2550 | .. _ref-classes-setuptools3_legacy: |
2563 | 2551 | ||
2564 | ``setuptools3_legacy`` | 2552 | ``setuptools3_legacy`` |
2565 | ====================== | 2553 | ====================== |
2566 | 2554 | ||
2567 | The :ref:`setuptools3_legacy <ref-classes-setuptools3_legacy>` class supports | 2555 | The :ref:`ref-classes-setuptools3_legacy` class supports |
2568 | Python version 3.x extensions that use build systems based on ``setuptools`` | 2556 | Python version 3.x extensions that use build systems based on ``setuptools`` |
2569 | (e.g. only have a ``setup.py`` and have not migrated to the official | 2557 | (e.g. only have a ``setup.py`` and have not migrated to the official |
2570 | ``pyproject.toml`` format). Unlike :ref:`setuptools3 <ref-classes-setuptools3>`, | 2558 | ``pyproject.toml`` format). Unlike :ref:`ref-classes-setuptools3`, |
2571 | this uses the traditional ``setup.py`` ``build`` and ``install`` commands and | 2559 | this uses the traditional ``setup.py`` ``build`` and ``install`` commands and |
2572 | not wheels. This use of ``setuptools`` like this is | 2560 | not wheels. This use of ``setuptools`` like this is |
2573 | `deprecated <https://github.com/pypa/setuptools/blob/main/CHANGES.rst#v5830>`__ | 2561 | `deprecated <https://github.com/pypa/setuptools/blob/main/CHANGES.rst#v5830>`__ |
@@ -2578,36 +2566,35 @@ but still relatively common. | |||
2578 | ``setuptools3-base`` | 2566 | ``setuptools3-base`` |
2579 | ==================== | 2567 | ==================== |
2580 | 2568 | ||
2581 | The :ref:`setuptools3-base <ref-classes-setuptools3-base>` class provides a reusable base for other classes | 2569 | The :ref:`ref-classes-setuptools3-base` class provides a reusable base for |
2582 | that support building Python version 3.x extensions. If you need | 2570 | other classes that support building Python version 3.x extensions. If you need |
2583 | functionality that is not provided by the :ref:`setuptools3 <ref-classes-setuptools3>` class, you may | 2571 | functionality that is not provided by the :ref:`ref-classes-setuptools3` class, |
2584 | want to ``inherit setuptools3-base``. Some recipes do not need the tasks | 2572 | you may want to ``inherit setuptools3-base``. Some recipes do not need the tasks |
2585 | in the :ref:`setuptools3 <ref-classes-setuptools3>` class and inherit this class instead. | 2573 | in the :ref:`ref-classes-setuptools3` class and inherit this class instead. |
2586 | 2574 | ||
2587 | .. _ref-classes-sign_rpm: | 2575 | .. _ref-classes-sign_rpm: |
2588 | 2576 | ||
2589 | ``sign_rpm`` | 2577 | ``sign_rpm`` |
2590 | ============ | 2578 | ============ |
2591 | 2579 | ||
2592 | The :ref:`sign_rpm <ref-classes-sign_rpm>` class supports generating signed RPM packages. | 2580 | The :ref:`ref-classes-sign_rpm` class supports generating signed RPM packages. |
2593 | 2581 | ||
2594 | .. _ref-classes-siteconfig: | 2582 | .. _ref-classes-siteconfig: |
2595 | 2583 | ||
2596 | ``siteconfig`` | 2584 | ``siteconfig`` |
2597 | ============== | 2585 | ============== |
2598 | 2586 | ||
2599 | The :ref:`siteconfig <ref-classes-siteconfig>` class provides functionality for handling site | 2587 | The :ref:`ref-classes-siteconfig` class provides functionality for handling site |
2600 | configuration. The class is used by the | 2588 | configuration. The class is used by the :ref:`ref-classes-autotools` class to |
2601 | :ref:`autotools <ref-classes-autotools>` class to accelerate the | 2589 | accelerate the :ref:`ref-tasks-configure` task. |
2602 | :ref:`ref-tasks-configure` task. | ||
2603 | 2590 | ||
2604 | .. _ref-classes-siteinfo: | 2591 | .. _ref-classes-siteinfo: |
2605 | 2592 | ||
2606 | ``siteinfo`` | 2593 | ``siteinfo`` |
2607 | ============ | 2594 | ============ |
2608 | 2595 | ||
2609 | The :ref:`siteinfo <ref-classes-siteinfo>` class provides information about the targets that might | 2596 | The :ref:`ref-classes-siteinfo` class provides information about the targets |
2610 | be needed by other classes or recipes. | 2597 | that might be needed by other classes or recipes. |
2611 | 2598 | ||
2612 | As an example, consider Autotools, which can require tests that must | 2599 | As an example, consider Autotools, which can require tests that must |
2613 | execute on the target hardware. Since this is not possible in general | 2600 | execute on the target hardware. Since this is not possible in general |
@@ -2627,9 +2614,9 @@ The class also provides variables like :term:`SITEINFO_ENDIANNESS` and | |||
2627 | ``sstate`` | 2614 | ``sstate`` |
2628 | ========== | 2615 | ========== |
2629 | 2616 | ||
2630 | The :ref:`sstate <ref-classes-sstate>` class provides support for Shared State (sstate). By | 2617 | The :ref:`ref-classes-sstate` class provides support for Shared State (sstate). |
2631 | default, the class is enabled through the | 2618 | By default, the class is enabled through the :term:`INHERIT_DISTRO` variable's |
2632 | :term:`INHERIT_DISTRO` variable's default value. | 2619 | default value. |
2633 | 2620 | ||
2634 | For more information on sstate, see the | 2621 | For more information on sstate, see the |
2635 | ":ref:`overview-manual/concepts:shared state cache`" | 2622 | ":ref:`overview-manual/concepts:shared state cache`" |
@@ -2640,7 +2627,7 @@ section in the Yocto Project Overview and Concepts Manual. | |||
2640 | ``staging`` | 2627 | ``staging`` |
2641 | =========== | 2628 | =========== |
2642 | 2629 | ||
2643 | The :ref:`staging <ref-classes-staging>` class installs files into individual recipe work | 2630 | The :ref:`ref-classes-staging` class installs files into individual recipe work |
2644 | directories for sysroots. The class contains the following key tasks: | 2631 | directories for sysroots. The class contains the following key tasks: |
2645 | 2632 | ||
2646 | - The :ref:`ref-tasks-populate_sysroot` task, | 2633 | - The :ref:`ref-tasks-populate_sysroot` task, |
@@ -2653,8 +2640,8 @@ directories for sysroots. The class contains the following key tasks: | |||
2653 | installs the files into the individual recipe work directories (i.e. | 2640 | installs the files into the individual recipe work directories (i.e. |
2654 | :term:`WORKDIR`). | 2641 | :term:`WORKDIR`). |
2655 | 2642 | ||
2656 | The code in the :ref:`staging <ref-classes-staging>` class is complex and basically works in two | 2643 | The code in the :ref:`ref-classes-staging` class is complex and basically works |
2657 | stages: | 2644 | in two stages: |
2658 | 2645 | ||
2659 | - *Stage One:* The first stage addresses recipes that have files they | 2646 | - *Stage One:* The first stage addresses recipes that have files they |
2660 | want to share with other recipes that have dependencies on the | 2647 | want to share with other recipes that have dependencies on the |
@@ -2727,8 +2714,7 @@ stages: | |||
2727 | dependencies traversed or installed. The same sstate dependency code | 2714 | dependencies traversed or installed. The same sstate dependency code |
2728 | is used so that builds should be identical regardless of whether | 2715 | is used so that builds should be identical regardless of whether |
2729 | sstate was used or not. For a closer look, see the | 2716 | sstate was used or not. For a closer look, see the |
2730 | ``setscene_depvalid()`` function in the | 2717 | ``setscene_depvalid()`` function in the :ref:`ref-classes-sstate` class. |
2731 | :ref:`sstate <ref-classes-sstate>` class. | ||
2732 | 2718 | ||
2733 | The build system is careful to maintain manifests of the files it | 2719 | The build system is careful to maintain manifests of the files it |
2734 | installs so that any given dependency can be installed as needed. The | 2720 | installs so that any given dependency can be installed as needed. The |
@@ -2740,8 +2726,8 @@ stages: | |||
2740 | ``syslinux`` | 2726 | ``syslinux`` |
2741 | ============ | 2727 | ============ |
2742 | 2728 | ||
2743 | The :ref:`syslinux <ref-classes-syslinux>` class provides syslinux-specific functions for building | 2729 | The :ref:`ref-classes-syslinux` class provides syslinux-specific functions for |
2744 | bootable images. | 2730 | building bootable images. |
2745 | 2731 | ||
2746 | The class supports the following variables: | 2732 | The class supports the following variables: |
2747 | 2733 | ||
@@ -2783,8 +2769,8 @@ The class supports the following variables: | |||
2783 | ``systemd`` | 2769 | ``systemd`` |
2784 | =========== | 2770 | =========== |
2785 | 2771 | ||
2786 | The :ref:`systemd <ref-classes-systemd>` class provides support for recipes that install systemd | 2772 | The :ref:`ref-classes-systemd` class provides support for recipes that install |
2787 | unit files. | 2773 | systemd unit files. |
2788 | 2774 | ||
2789 | The functionality for this class is disabled unless you have "systemd" | 2775 | The functionality for this class is disabled unless you have "systemd" |
2790 | in :term:`DISTRO_FEATURES`. | 2776 | in :term:`DISTRO_FEATURES`. |
@@ -2809,7 +2795,7 @@ Services are set up to start on boot automatically | |||
2809 | unless you have set | 2795 | unless you have set |
2810 | :term:`SYSTEMD_AUTO_ENABLE` to "disable". | 2796 | :term:`SYSTEMD_AUTO_ENABLE` to "disable". |
2811 | 2797 | ||
2812 | For more information on :ref:`systemd <ref-classes-systemd>`, see the | 2798 | For more information on :ref:`ref-classes-systemd`, see the |
2813 | ":ref:`dev-manual/init-manager:selecting an initialization manager`" | 2799 | ":ref:`dev-manual/init-manager:selecting an initialization manager`" |
2814 | section in the Yocto Project Development Tasks Manual. | 2800 | section in the Yocto Project Development Tasks Manual. |
2815 | 2801 | ||
@@ -2818,18 +2804,18 @@ section in the Yocto Project Development Tasks Manual. | |||
2818 | ``systemd-boot`` | 2804 | ``systemd-boot`` |
2819 | ================ | 2805 | ================ |
2820 | 2806 | ||
2821 | The :ref:`systemd-boot <ref-classes-systemd-boot>` class provides functions specific to the | 2807 | The :ref:`ref-classes-systemd-boot` class provides functions specific to the |
2822 | systemd-boot bootloader for building bootable images. This is an | 2808 | systemd-boot bootloader for building bootable images. This is an |
2823 | internal class and is not intended to be used directly. | 2809 | internal class and is not intended to be used directly. |
2824 | 2810 | ||
2825 | .. note:: | 2811 | .. note:: |
2826 | 2812 | ||
2827 | The :ref:`systemd-boot <ref-classes-systemd-boot>` class is a result from merging the ``gummiboot`` class | 2813 | The :ref:`ref-classes-systemd-boot` class is a result from merging the ``gummiboot`` class |
2828 | used in previous Yocto Project releases with the ``systemd`` project. | 2814 | used in previous Yocto Project releases with the ``systemd`` project. |
2829 | 2815 | ||
2830 | Set the :term:`EFI_PROVIDER` variable to | 2816 | Set the :term:`EFI_PROVIDER` variable to ":ref:`ref-classes-systemd-boot`" to |
2831 | ":ref:`systemd-boot <ref-classes-systemd-boot>`" to use this class. Doing so creates a standalone EFI | 2817 | use this class. Doing so creates a standalone EFI bootloader that is not |
2832 | bootloader that is not dependent on systemd. | 2818 | dependent on systemd. |
2833 | 2819 | ||
2834 | For information on more variables used and supported in this class, see | 2820 | For information on more variables used and supported in this class, see |
2835 | the :term:`SYSTEMD_BOOT_CFG`, | 2821 | the :term:`SYSTEMD_BOOT_CFG`, |
@@ -2845,24 +2831,22 @@ for more information. | |||
2845 | ``terminal`` | 2831 | ``terminal`` |
2846 | ============ | 2832 | ============ |
2847 | 2833 | ||
2848 | The :ref:`terminal <ref-classes-terminal>` class provides support for starting a terminal session. | 2834 | The :ref:`ref-classes-terminal` class provides support for starting a terminal |
2849 | The :term:`OE_TERMINAL` variable controls which | 2835 | session. The :term:`OE_TERMINAL` variable controls which terminal emulator is |
2850 | terminal emulator is used for the session. | 2836 | used for the session. |
2851 | 2837 | ||
2852 | Other classes use the :ref:`terminal <ref-classes-terminal>` class anywhere a separate terminal | 2838 | Other classes use the :ref:`ref-classes-terminal` class anywhere a separate |
2853 | session needs to be started. For example, the | 2839 | terminal session needs to be started. For example, the :ref:`ref-classes-patch` |
2854 | :ref:`patch <ref-classes-patch>` class assuming | 2840 | class assuming :term:`PATCHRESOLVE` is set to "user", the |
2855 | :term:`PATCHRESOLVE` is set to "user", the | 2841 | :ref:`ref-classes-cml1` class, and the :ref:`ref-classes-devshell` class all |
2856 | :ref:`cml1 <ref-classes-cml1>` class, and the | 2842 | use the :ref:`ref-classes-terminal` class. |
2857 | :ref:`devshell <ref-classes-devshell>` class all use the :ref:`terminal <ref-classes-terminal>` | ||
2858 | class. | ||
2859 | 2843 | ||
2860 | .. _ref-classes-testimage: | 2844 | .. _ref-classes-testimage: |
2861 | 2845 | ||
2862 | ``testimage`` | 2846 | ``testimage`` |
2863 | ============= | 2847 | ============= |
2864 | 2848 | ||
2865 | The :ref:`testimage <ref-classes-testimage>` class supports running automated tests against | 2849 | The :ref:`ref-classes-testimage` class supports running automated tests against |
2866 | images using QEMU and on actual hardware. The classes handle loading the | 2850 | images using QEMU and on actual hardware. The classes handle loading the |
2867 | tests and starting the image. To use the classes, you need to perform | 2851 | tests and starting the image. To use the classes, you need to perform |
2868 | steps to set up the environment. | 2852 | steps to set up the environment. |
@@ -2874,7 +2858,7 @@ To enable this class, add the following to your configuration:: | |||
2874 | The tests are commands that run on the target system over ``ssh``. Each | 2858 | The tests are commands that run on the target system over ``ssh``. Each |
2875 | test is written in Python and makes use of the ``unittest`` module. | 2859 | test is written in Python and makes use of the ``unittest`` module. |
2876 | 2860 | ||
2877 | The :ref:`testimage <ref-classes-testimage>` class runs tests on an image when called using the | 2861 | The :ref:`ref-classes-testimage` class runs tests on an image when called using the |
2878 | following:: | 2862 | following:: |
2879 | 2863 | ||
2880 | $ bitbake -c testimage image | 2864 | $ bitbake -c testimage image |
@@ -2894,7 +2878,7 @@ section in the Yocto Project Development Tasks Manual. | |||
2894 | =========== | 2878 | =========== |
2895 | 2879 | ||
2896 | This class supports running automated tests against software development | 2880 | This class supports running automated tests against software development |
2897 | kits (SDKs). The :ref:`testsdk <ref-classes-testsdk>` class runs tests on an SDK when called | 2881 | kits (SDKs). The :ref:`ref-classes-testsdk` class runs tests on an SDK when called |
2898 | using the following:: | 2882 | using the following:: |
2899 | 2883 | ||
2900 | $ bitbake -c testsdk image | 2884 | $ bitbake -c testsdk image |
@@ -2902,7 +2886,7 @@ using the following:: | |||
2902 | .. note:: | 2886 | .. note:: |
2903 | 2887 | ||
2904 | Best practices include using :term:`IMAGE_CLASSES` rather than | 2888 | Best practices include using :term:`IMAGE_CLASSES` rather than |
2905 | :term:`INHERIT` to inherit the :ref:`testsdk <ref-classes-testsdk>` class for automated SDK | 2889 | :term:`INHERIT` to inherit the :ref:`ref-classes-testsdk` class for automated SDK |
2906 | testing. | 2890 | testing. |
2907 | 2891 | ||
2908 | .. _ref-classes-texinfo: | 2892 | .. _ref-classes-texinfo: |
@@ -2928,7 +2912,7 @@ host system. | |||
2928 | ``toaster`` | 2912 | ``toaster`` |
2929 | =========== | 2913 | =========== |
2930 | 2914 | ||
2931 | The :ref:`toaster <ref-classes-toaster>` class collects information about packages and images and | 2915 | The :ref:`ref-classes-toaster` class collects information about packages and images and |
2932 | sends them as events that the BitBake user interface can receive. The | 2916 | sends them as events that the BitBake user interface can receive. The |
2933 | class is enabled when the Toaster user interface is running. | 2917 | class is enabled when the Toaster user interface is running. |
2934 | 2918 | ||
@@ -2939,7 +2923,7 @@ This class is not intended to be used directly. | |||
2939 | ``toolchain-scripts`` | 2923 | ``toolchain-scripts`` |
2940 | ===================== | 2924 | ===================== |
2941 | 2925 | ||
2942 | The :ref:`toolchain-scripts <ref-classes-toolchain-scripts>` class provides the scripts used for setting up | 2926 | The :ref:`ref-classes-toolchain-scripts` class provides the scripts used for setting up |
2943 | the environment for installed SDKs. | 2927 | the environment for installed SDKs. |
2944 | 2928 | ||
2945 | .. _ref-classes-typecheck: | 2929 | .. _ref-classes-typecheck: |
@@ -2947,7 +2931,7 @@ the environment for installed SDKs. | |||
2947 | ``typecheck`` | 2931 | ``typecheck`` |
2948 | ============= | 2932 | ============= |
2949 | 2933 | ||
2950 | The :ref:`typecheck <ref-classes-typecheck>` class provides support for validating the values of | 2934 | The :ref:`ref-classes-typecheck` class provides support for validating the values of |
2951 | variables set at the configuration level against their defined types. | 2935 | variables set at the configuration level against their defined types. |
2952 | The OpenEmbedded build system allows you to define the type of a | 2936 | The OpenEmbedded build system allows you to define the type of a |
2953 | variable using the "type" varflag. Here is an example:: | 2937 | variable using the "type" varflag. Here is an example:: |
@@ -2959,7 +2943,7 @@ variable using the "type" varflag. Here is an example:: | |||
2959 | ``uboot-config`` | 2943 | ``uboot-config`` |
2960 | ================ | 2944 | ================ |
2961 | 2945 | ||
2962 | The :ref:`uboot-config <ref-classes-uboot-config>` class provides support for U-Boot configuration for | 2946 | The :ref:`ref-classes-uboot-config` class provides support for U-Boot configuration for |
2963 | a machine. Specify the machine in your recipe as follows:: | 2947 | a machine. Specify the machine in your recipe as follows:: |
2964 | 2948 | ||
2965 | UBOOT_CONFIG ??= <default> | 2949 | UBOOT_CONFIG ??= <default> |
@@ -2990,7 +2974,7 @@ yourself, publish the resulting tarball (e.g. via HTTP) and set | |||
2990 | ``UNINATIVE_URL`` and ``UNINATIVE_CHECKSUM`` appropriately. For an | 2974 | ``UNINATIVE_URL`` and ``UNINATIVE_CHECKSUM`` appropriately. For an |
2991 | example, see the ``meta/conf/distro/include/yocto-uninative.inc``. | 2975 | example, see the ``meta/conf/distro/include/yocto-uninative.inc``. |
2992 | 2976 | ||
2993 | The :ref:`uninative <ref-classes-uninative>` class is also used unconditionally by the extensible | 2977 | The :ref:`ref-classes-uninative` class is also used unconditionally by the extensible |
2994 | SDK. When building the extensible SDK, ``uninative-tarball`` is built | 2978 | SDK. When building the extensible SDK, ``uninative-tarball`` is built |
2995 | and the resulting tarball is included within the SDK. | 2979 | and the resulting tarball is included within the SDK. |
2996 | 2980 | ||
@@ -2999,12 +2983,12 @@ and the resulting tarball is included within the SDK. | |||
2999 | ``update-alternatives`` | 2983 | ``update-alternatives`` |
3000 | ======================= | 2984 | ======================= |
3001 | 2985 | ||
3002 | The :ref:`update-alternatives <ref-classes-update-alternatives>` class helps the alternatives system when | 2986 | The :ref:`ref-classes-update-alternatives` class helps the alternatives system when |
3003 | multiple sources provide the same command. This situation occurs when | 2987 | multiple sources provide the same command. This situation occurs when |
3004 | several programs that have the same or similar function are installed | 2988 | several programs that have the same or similar function are installed |
3005 | with the same name. For example, the ``ar`` command is available from | 2989 | with the same name. For example, the ``ar`` command is available from |
3006 | the ``busybox``, ``binutils`` and ``elfutils`` packages. The | 2990 | the ``busybox``, ``binutils`` and ``elfutils`` packages. The |
3007 | :ref:`update-alternatives <ref-classes-update-alternatives>` class handles renaming the binaries so that | 2991 | :ref:`ref-classes-update-alternatives` class handles renaming the binaries so that |
3008 | multiple packages can be installed without conflicts. The ``ar`` command | 2992 | multiple packages can be installed without conflicts. The ``ar`` command |
3009 | still works regardless of which packages are installed or subsequently | 2993 | still works regardless of which packages are installed or subsequently |
3010 | removed. The class renames the conflicting binary in each package and | 2994 | removed. The class renames the conflicting binary in each package and |
@@ -3037,7 +3021,7 @@ file. | |||
3037 | ``update-rc.d`` | 3021 | ``update-rc.d`` |
3038 | =============== | 3022 | =============== |
3039 | 3023 | ||
3040 | The :ref:`update-rc.d <ref-classes-update-rc.d>` class uses ``update-rc.d`` to safely install an | 3024 | The :ref:`ref-classes-update-rc.d` class uses ``update-rc.d`` to safely install an |
3041 | initialization script on behalf of the package. The OpenEmbedded build | 3025 | initialization script on behalf of the package. The OpenEmbedded build |
3042 | system takes care of details such as making sure the script is stopped | 3026 | system takes care of details such as making sure the script is stopped |
3043 | before a package is removed and started when the package is installed. | 3027 | before a package is removed and started when the package is installed. |
@@ -3085,13 +3069,11 @@ set static values, the OpenEmbedded build system looks in | |||
3085 | :term:`BBPATH` for ``files/passwd`` and ``files/group`` | 3069 | :term:`BBPATH` for ``files/passwd`` and ``files/group`` |
3086 | files for the values. | 3070 | files for the values. |
3087 | 3071 | ||
3088 | To use static ``uid`` and ``gid`` values, you need to set some | 3072 | To use static ``uid`` and ``gid`` values, you need to set some variables. See |
3089 | variables. See the :term:`USERADDEXTENSION`, | 3073 | the :term:`USERADDEXTENSION`, :term:`USERADD_UID_TABLES`, |
3090 | :term:`USERADD_UID_TABLES`, | 3074 | :term:`USERADD_GID_TABLES`, and :term:`USERADD_ERROR_DYNAMIC` variables. |
3091 | :term:`USERADD_GID_TABLES`, and | 3075 | You can also see the :ref:`ref-classes-useradd` class for additional |
3092 | :term:`USERADD_ERROR_DYNAMIC` variables. | 3076 | information. |
3093 | You can also see the :ref:`useradd <ref-classes-useradd>` class for | ||
3094 | additional information. | ||
3095 | 3077 | ||
3096 | .. note:: | 3078 | .. note:: |
3097 | 3079 | ||
@@ -3106,32 +3088,31 @@ additional information. | |||
3106 | ``utility-tasks`` | 3088 | ``utility-tasks`` |
3107 | ================= | 3089 | ================= |
3108 | 3090 | ||
3109 | The :ref:`utility-tasks <ref-classes-utility-tasks>` class provides support for various "utility" type | 3091 | The :ref:`ref-classes-utility-tasks` class provides support for various |
3110 | tasks that are applicable to all recipes, such as | 3092 | "utility" type tasks that are applicable to all recipes, such as |
3111 | :ref:`ref-tasks-clean` and | 3093 | :ref:`ref-tasks-clean` and :ref:`ref-tasks-listtasks`. |
3112 | :ref:`ref-tasks-listtasks`. | ||
3113 | 3094 | ||
3114 | This class is enabled by default because it is inherited by the | 3095 | This class is enabled by default because it is inherited by the |
3115 | :ref:`base <ref-classes-base>` class. | 3096 | :ref:`ref-classes-base` class. |
3116 | 3097 | ||
3117 | .. _ref-classes-utils: | 3098 | .. _ref-classes-utils: |
3118 | 3099 | ||
3119 | ``utils`` | 3100 | ``utils`` |
3120 | ========= | 3101 | ========= |
3121 | 3102 | ||
3122 | The :ref:`utils <ref-classes-utils>` class provides some useful Python functions that are | 3103 | The :ref:`ref-classes-utils` class provides some useful Python functions that are |
3123 | typically used in inline Python expressions (e.g. ``${@...}``). One | 3104 | typically used in inline Python expressions (e.g. ``${@...}``). One |
3124 | example use is for ``bb.utils.contains()``. | 3105 | example use is for ``bb.utils.contains()``. |
3125 | 3106 | ||
3126 | This class is enabled by default because it is inherited by the | 3107 | This class is enabled by default because it is inherited by the |
3127 | :ref:`base <ref-classes-base>` class. | 3108 | :ref:`ref-classes-base` class. |
3128 | 3109 | ||
3129 | .. _ref-classes-vala: | 3110 | .. _ref-classes-vala: |
3130 | 3111 | ||
3131 | ``vala`` | 3112 | ``vala`` |
3132 | ======== | 3113 | ======== |
3133 | 3114 | ||
3134 | The :ref:`vala <ref-classes-vala>` class supports recipes that need to build software written | 3115 | The :ref:`ref-classes-vala` class supports recipes that need to build software written |
3135 | using the Vala programming language. | 3116 | using the Vala programming language. |
3136 | 3117 | ||
3137 | .. _ref-classes-waf: | 3118 | .. _ref-classes-waf: |
@@ -3139,7 +3120,7 @@ using the Vala programming language. | |||
3139 | ``waf`` | 3120 | ``waf`` |
3140 | ======= | 3121 | ======= |
3141 | 3122 | ||
3142 | The :ref:`waf <ref-classes-waf>` class supports recipes that need to build software that uses | 3123 | The :ref:`ref-classes-waf` class supports recipes that need to build software that uses |
3143 | the Waf build system. You can use the | 3124 | the Waf build system. You can use the |
3144 | :term:`EXTRA_OECONF` or | 3125 | :term:`EXTRA_OECONF` or |
3145 | :term:`PACKAGECONFIG_CONFARGS` variables | 3126 | :term:`PACKAGECONFIG_CONFARGS` variables |
diff --git a/documentation/ref-manual/features.rst b/documentation/ref-manual/features.rst index 0229747650..794a6fd15b 100644 --- a/documentation/ref-manual/features.rst +++ b/documentation/ref-manual/features.rst | |||
@@ -358,7 +358,7 @@ Here are the image features available for all images: | |||
358 | a given image. | 358 | a given image. |
359 | 359 | ||
360 | Some image features are available only when you inherit the | 360 | Some image features are available only when you inherit the |
361 | :ref:`core-image <ref-classes-core-image>` class. The current list of | 361 | :ref:`ref-classes-core-image` class. The current list of |
362 | these valid features is as follows: | 362 | these valid features is as follows: |
363 | 363 | ||
364 | - *hwcodecs:* Installs hardware acceleration codecs. | 364 | - *hwcodecs:* Installs hardware acceleration codecs. |
diff --git a/documentation/ref-manual/qa-checks.rst b/documentation/ref-manual/qa-checks.rst index 798d4be4cf..13096816d2 100644 --- a/documentation/ref-manual/qa-checks.rst +++ b/documentation/ref-manual/qa-checks.rst | |||
@@ -580,7 +580,7 @@ Errors and Warnings | |||
580 | 580 | ||
581 | The specified package contains mime type files (``.xml`` files in | 581 | The specified package contains mime type files (``.xml`` files in |
582 | ``${datadir}/mime/packages``) and yet does not inherit the | 582 | ``${datadir}/mime/packages``) and yet does not inherit the |
583 | :ref:`mime <ref-classes-mime>` class which will ensure that these get | 583 | :ref:`ref-classes-mime` class which will ensure that these get |
584 | properly installed. Either add ``inherit mime`` to the recipe or remove the | 584 | properly installed. Either add ``inherit mime`` to the recipe or remove the |
585 | files at the :ref:`ref-tasks-install` step if they are not needed. | 585 | files at the :ref:`ref-tasks-install` step if they are not needed. |
586 | 586 | ||
@@ -590,7 +590,7 @@ Errors and Warnings | |||
590 | - ``package contains desktop file with key 'MimeType' but does not inhert mime-xdg: <packagename> path '<file>' [mime-xdg]`` | 590 | - ``package contains desktop file with key 'MimeType' but does not inhert mime-xdg: <packagename> path '<file>' [mime-xdg]`` |
591 | 591 | ||
592 | The specified package contains a .desktop file with a 'MimeType' key | 592 | The specified package contains a .desktop file with a 'MimeType' key |
593 | present, but does not inherit the :ref:`mime-xdg <ref-classes-mime-xdg>` | 593 | present, but does not inherit the :ref:`ref-classes-mime-xdg` |
594 | class that is required in order for that to be activated. Either add | 594 | class that is required in order for that to be activated. Either add |
595 | ``inherit mime`` to the recipe or remove the files at the | 595 | ``inherit mime`` to the recipe or remove the files at the |
596 | :ref:`ref-tasks-install` step if they are not needed. | 596 | :ref:`ref-tasks-install` step if they are not needed. |
@@ -621,9 +621,9 @@ Errors and Warnings | |||
621 | - ``<recipename>: recipe doesn't inherit features_check [unhandled-features-check]`` | 621 | - ``<recipename>: recipe doesn't inherit features_check [unhandled-features-check]`` |
622 | 622 | ||
623 | This check ensures that if one of the variables that the | 623 | This check ensures that if one of the variables that the |
624 | :ref:`features_check <ref-classes-features_check>` class supports (e.g. | 624 | :ref:`ref-classes-features_check` class supports (e.g. |
625 | :term:`REQUIRED_DISTRO_FEATURES`) is used, then the recipe | 625 | :term:`REQUIRED_DISTRO_FEATURES`) is used, then the recipe |
626 | inherits :ref:`features_check <ref-classes-features_check>` in order for | 626 | inherits :ref:`ref-classes-features_check` in order for |
627 | the requirement to actually work. If you are seeing this message, either | 627 | the requirement to actually work. If you are seeing this message, either |
628 | add ``inherit features_check`` to your recipe or remove the reference to | 628 | add ``inherit features_check`` to your recipe or remove the reference to |
629 | the variable if it is not needed. | 629 | the variable if it is not needed. |
@@ -634,7 +634,7 @@ Errors and Warnings | |||
634 | - ``<recipename>: recipe defines ALTERNATIVE:<packagename> but doesn't inherit update-alternatives. This might fail during do_rootfs later! [missing-update-alternatives]`` | 634 | - ``<recipename>: recipe defines ALTERNATIVE:<packagename> but doesn't inherit update-alternatives. This might fail during do_rootfs later! [missing-update-alternatives]`` |
635 | 635 | ||
636 | This check ensures that if a recipe sets the :term:`ALTERNATIVE` variable that the | 636 | This check ensures that if a recipe sets the :term:`ALTERNATIVE` variable that the |
637 | recipe also inherits :ref:`update-alternatives <ref-classes-update-alternatives>` such | 637 | recipe also inherits :ref:`ref-classes-update-alternatives` such |
638 | that the alternative will be correctly set up. If you are seeing this message, either | 638 | that the alternative will be correctly set up. If you are seeing this message, either |
639 | add ``inherit update-alternatives`` to your recipe or remove the reference to the variable | 639 | add ``inherit update-alternatives`` to your recipe or remove the reference to the variable |
640 | if it is not needed. | 640 | if it is not needed. |
@@ -655,7 +655,7 @@ Errors and Warnings | |||
655 | - ``<packagename> contains perllocal.pod (<files>), should not be installed [perllocalpod]`` | 655 | - ``<packagename> contains perllocal.pod (<files>), should not be installed [perllocalpod]`` |
656 | 656 | ||
657 | ``perllocal.pod`` is an index file of locally installed modules and so shouldn't be | 657 | ``perllocal.pod`` is an index file of locally installed modules and so shouldn't be |
658 | installed by any distribution packages. The :ref:`cpan <ref-classes-cpan>` class | 658 | installed by any distribution packages. The :ref:`ref-classes-cpan` class |
659 | already sets ``NO_PERLLOCAL`` to stop this file being generated by most Perl recipes, | 659 | already sets ``NO_PERLLOCAL`` to stop this file being generated by most Perl recipes, |
660 | but if a recipe is using ``MakeMaker`` directly then they might not be doing this | 660 | but if a recipe is using ``MakeMaker`` directly then they might not be doing this |
661 | correctly. This check ensures that perllocal.pod is not in any package in order to | 661 | correctly. This check ensures that perllocal.pod is not in any package in order to |
diff --git a/documentation/ref-manual/structure.rst b/documentation/ref-manual/structure.rst index f3a52a19f3..e895382eec 100644 --- a/documentation/ref-manual/structure.rst +++ b/documentation/ref-manual/structure.rst | |||
@@ -233,7 +233,7 @@ is available via the :term:`TOPDIR` variable. | |||
233 | ----------------------- | 233 | ----------------------- |
234 | 234 | ||
235 | The OpenEmbedded build system creates this directory when you enable | 235 | The OpenEmbedded build system creates this directory when you enable |
236 | build history via the :ref:`buildhistory <ref-classes-buildhistory>` class file. The directory | 236 | build history via the :ref:`ref-classes-buildhistory` class file. The directory |
237 | organizes build information into image, packages, and SDK | 237 | organizes build information into image, packages, and SDK |
238 | subdirectories. For information on the build history feature, see the | 238 | subdirectories. For information on the build history feature, see the |
239 | ":ref:`dev-manual/build-quality:maintaining build output quality`" | 239 | ":ref:`dev-manual/build-quality:maintaining build output quality`" |
@@ -375,7 +375,7 @@ remove the ``build/sstate-cache`` directory. | |||
375 | ~~~~~~~~~~~~~~~~~~~~~~~~~ | 375 | ~~~~~~~~~~~~~~~~~~~~~~~~~ |
376 | 376 | ||
377 | This directory stores the build statistics as generated by the | 377 | This directory stores the build statistics as generated by the |
378 | :ref:`buildstats <ref-classes-buildstats>` class. | 378 | :ref:`ref-classes-buildstats` class. |
379 | 379 | ||
380 | .. _structure-build-tmp-cache: | 380 | .. _structure-build-tmp-cache: |
381 | 381 | ||
diff --git a/documentation/ref-manual/tasks.rst b/documentation/ref-manual/tasks.rst index e626095b20..7a664cc6c0 100644 --- a/documentation/ref-manual/tasks.rst +++ b/documentation/ref-manual/tasks.rst | |||
@@ -78,9 +78,9 @@ task runs with the current working directory set to | |||
78 | ``${``\ :term:`B`\ ``}``. | 78 | ``${``\ :term:`B`\ ``}``. |
79 | 79 | ||
80 | Recipes implementing this task should inherit the | 80 | Recipes implementing this task should inherit the |
81 | :ref:`deploy <ref-classes-deploy>` class and should write the output | 81 | :ref:`ref-classes-deploy` class and should write the output |
82 | to ``${``\ :term:`DEPLOYDIR`\ ``}``, which is not to be | 82 | to ``${``\ :term:`DEPLOYDIR`\ ``}``, which is not to be |
83 | confused with ``${DEPLOY_DIR}``. The :ref:`deploy <ref-classes-deploy>` class sets up | 83 | confused with ``${DEPLOY_DIR}``. The :ref:`ref-classes-deploy` class sets up |
84 | :ref:`ref-tasks-deploy` as a shared state (sstate) task that can be accelerated | 84 | :ref:`ref-tasks-deploy` as a shared state (sstate) task that can be accelerated |
85 | through sstate use. The sstate mechanism takes care of copying the | 85 | through sstate use. The sstate mechanism takes care of copying the |
86 | output from ``${DEPLOYDIR}`` to ``${DEPLOY_DIR_IMAGE}``. | 86 | output from ``${DEPLOYDIR}`` to ``${DEPLOY_DIR_IMAGE}``. |
@@ -102,7 +102,7 @@ Adding :ref:`ref-tasks-deploy` after other tasks works the same way. | |||
102 | .. note:: | 102 | .. note:: |
103 | 103 | ||
104 | You do not need to add ``before do_build`` to the ``addtask`` command | 104 | You do not need to add ``before do_build`` to the ``addtask`` command |
105 | (though it is harmless), because the :ref:`base <ref-classes-base>` class contains the following:: | 105 | (though it is harmless), because the :ref:`ref-classes-base` class contains the following:: |
106 | 106 | ||
107 | do_build[recrdeptask] += "do_deploy" | 107 | do_build[recrdeptask] += "do_deploy" |
108 | 108 | ||
@@ -225,7 +225,7 @@ section in the Yocto Project Overview and Concepts Manual. | |||
225 | ----------------- | 225 | ----------------- |
226 | 226 | ||
227 | Runs QA checks on packaged files. For more information on these checks, | 227 | Runs QA checks on packaged files. For more information on these checks, |
228 | see the :ref:`insane <ref-classes-insane>` class. | 228 | see the :ref:`ref-classes-insane` class. |
229 | 229 | ||
230 | .. _ref-tasks-package_write_deb: | 230 | .. _ref-tasks-package_write_deb: |
231 | 231 | ||
@@ -406,7 +406,7 @@ Installs the files into the individual recipe specific sysroots (i.e. | |||
406 | ``recipe-sysroot`` and ``recipe-sysroot-native`` under | 406 | ``recipe-sysroot`` and ``recipe-sysroot-native`` under |
407 | ``${``\ :term:`WORKDIR`\ ``}`` based upon the | 407 | ``${``\ :term:`WORKDIR`\ ``}`` based upon the |
408 | dependencies specified by :term:`DEPENDS`). See the | 408 | dependencies specified by :term:`DEPENDS`). See the |
409 | ":ref:`staging <ref-classes-staging>`" class for more information. | 409 | ":ref:`ref-classes-staging`" class for more information. |
410 | 410 | ||
411 | .. _ref-tasks-rm_work: | 411 | .. _ref-tasks-rm_work: |
412 | 412 | ||
diff --git a/documentation/ref-manual/variables.rst b/documentation/ref-manual/variables.rst index 5f5fea344e..f2decd713b 100644 --- a/documentation/ref-manual/variables.rst +++ b/documentation/ref-manual/variables.rst | |||
@@ -126,7 +126,7 @@ system and gives an overview of their function and contents. | |||
126 | ":ref:`ref-classes-update-alternatives`" section. | 126 | ":ref:`ref-classes-update-alternatives`" section. |
127 | 127 | ||
128 | :term:`ANY_OF_DISTRO_FEATURES` | 128 | :term:`ANY_OF_DISTRO_FEATURES` |
129 | When inheriting the :ref:`features_check <ref-classes-features_check>` | 129 | When inheriting the :ref:`ref-classes-features_check` |
130 | class, this variable identifies a list of distribution features where | 130 | class, this variable identifies a list of distribution features where |
131 | at least one must be enabled in the current configuration in order | 131 | at least one must be enabled in the current configuration in order |
132 | for the OpenEmbedded build system to build the recipe. In other words, | 132 | for the OpenEmbedded build system to build the recipe. In other words, |
@@ -139,14 +139,14 @@ system and gives an overview of their function and contents. | |||
139 | An override list of append strings for each target specified with | 139 | An override list of append strings for each target specified with |
140 | :term:`LABELS`. | 140 | :term:`LABELS`. |
141 | 141 | ||
142 | See the :ref:`grub-efi <ref-classes-grub-efi>` class for more | 142 | See the :ref:`ref-classes-grub-efi` class for more |
143 | information on how this variable is used. | 143 | information on how this variable is used. |
144 | 144 | ||
145 | :term:`AR` | 145 | :term:`AR` |
146 | The minimal command and arguments used to run ``ar``. | 146 | The minimal command and arguments used to run ``ar``. |
147 | 147 | ||
148 | :term:`ARCHIVER_MODE` | 148 | :term:`ARCHIVER_MODE` |
149 | When used with the :ref:`archiver <ref-classes-archiver>` class, | 149 | When used with the :ref:`ref-classes-archiver` class, |
150 | determines the type of information used to create a released archive. | 150 | determines the type of information used to create a released archive. |
151 | You can use this variable to create archives of patched source, | 151 | You can use this variable to create archives of patched source, |
152 | original source, configured source, and so forth by employing the | 152 | original source, configured source, and so forth by employing the |
@@ -197,13 +197,13 @@ system and gives an overview of their function and contents. | |||
197 | order to send patches and forward bugs. | 197 | order to send patches and forward bugs. |
198 | 198 | ||
199 | :term:`AUTO_LIBNAME_PKGS` | 199 | :term:`AUTO_LIBNAME_PKGS` |
200 | When the :ref:`debian <ref-classes-debian>` class is inherited, | 200 | When the :ref:`ref-classes-debian` class is inherited, |
201 | which is the default behavior, :term:`AUTO_LIBNAME_PKGS` specifies which | 201 | which is the default behavior, :term:`AUTO_LIBNAME_PKGS` specifies which |
202 | packages should be checked for libraries and renamed according to | 202 | packages should be checked for libraries and renamed according to |
203 | Debian library package naming. | 203 | Debian library package naming. |
204 | 204 | ||
205 | The default value is "${PACKAGES}", which causes the | 205 | The default value is "${PACKAGES}", which causes the |
206 | :ref:`debian <ref-classes-debian>` class to act on all packages that are | 206 | :ref:`ref-classes-debian` class to act on all packages that are |
207 | explicitly generated by the recipe. | 207 | explicitly generated by the recipe. |
208 | 208 | ||
209 | :term:`AUTOREV` | 209 | :term:`AUTOREV` |
@@ -215,7 +215,7 @@ system and gives an overview of their function and contents. | |||
215 | If you use the previous statement to retrieve the latest version of | 215 | If you use the previous statement to retrieve the latest version of |
216 | software, you need to be sure :term:`PV` contains | 216 | software, you need to be sure :term:`PV` contains |
217 | ``${``\ :term:`SRCPV`\ ``}``. For example, suppose you have a kernel | 217 | ``${``\ :term:`SRCPV`\ ``}``. For example, suppose you have a kernel |
218 | recipe that inherits the :ref:`kernel <ref-classes-kernel>` class and you | 218 | recipe that inherits the :ref:`ref-classes-kernel` class and you |
219 | use the previous statement. In this example, ``${SRCPV}`` does not | 219 | use the previous statement. In this example, ``${SRCPV}`` does not |
220 | automatically get into :term:`PV`. Consequently, you need to change | 220 | automatically get into :term:`PV`. Consequently, you need to change |
221 | :term:`PV` in your recipe so that it does contain ``${SRCPV}``. | 221 | :term:`PV` in your recipe so that it does contain ``${SRCPV}``. |
@@ -227,7 +227,7 @@ system and gives an overview of their function and contents. | |||
227 | :term:`AUTO_SYSLINUXMENU` | 227 | :term:`AUTO_SYSLINUXMENU` |
228 | Enables creating an automatic menu for the syslinux bootloader. You | 228 | Enables creating an automatic menu for the syslinux bootloader. You |
229 | must set this variable in your recipe. The | 229 | must set this variable in your recipe. The |
230 | :ref:`syslinux <ref-classes-syslinux>` class checks this variable. | 230 | :ref:`ref-classes-syslinux` class checks this variable. |
231 | 231 | ||
232 | :term:`AVAILTUNES` | 232 | :term:`AVAILTUNES` |
233 | The list of defined CPU and Application Binary Interface (ABI) | 233 | The list of defined CPU and Application Binary Interface (ABI) |
@@ -701,7 +701,7 @@ system and gives an overview of their function and contents. | |||
701 | ``quilt-native``, which is a copy of Quilt built to run on the build | 701 | ``quilt-native``, which is a copy of Quilt built to run on the build |
702 | system; "crosses" such as ``gcc-cross``, which is a compiler built to | 702 | system; "crosses" such as ``gcc-cross``, which is a compiler built to |
703 | run on the build machine but produces binaries that run on the target | 703 | run on the build machine but produces binaries that run on the target |
704 | :term:`MACHINE`; ":ref:`nativesdk <ref-classes-nativesdk>`", which | 704 | :term:`MACHINE`; ":ref:`ref-classes-nativesdk`", which |
705 | targets the SDK machine instead of :term:`MACHINE`; and "mulitlibs" in | 705 | targets the SDK machine instead of :term:`MACHINE`; and "mulitlibs" in |
706 | the form "``multilib:``\ multilib_name". | 706 | the form "``multilib:``\ multilib_name". |
707 | 707 | ||
@@ -909,13 +909,12 @@ system and gives an overview of their function and contents. | |||
909 | See :term:`bitbake:BBTARGETS` in the BitBake manual. | 909 | See :term:`bitbake:BBTARGETS` in the BitBake manual. |
910 | 910 | ||
911 | :term:`BINCONFIG` | 911 | :term:`BINCONFIG` |
912 | When inheriting the | 912 | When inheriting the :ref:`ref-classes-binconfig-disabled` class, this |
913 | :ref:`binconfig-disabled <ref-classes-binconfig-disabled>` class, | 913 | variable specifies binary configuration scripts to disable in favor of |
914 | this variable specifies binary configuration scripts to disable in | 914 | using ``pkg-config`` to query the information. The |
915 | favor of using ``pkg-config`` to query the information. The | 915 | :ref:`ref-classes-binconfig-disabled` class will modify the specified |
916 | :ref:`binconfig-disabled <ref-classes-binconfig-disabled>` class will modify the specified scripts to | 916 | scripts to return an error so that calls to them can be easily found |
917 | return an error so that calls to them can be easily found and | 917 | and replaced. |
918 | replaced. | ||
919 | 918 | ||
920 | To add multiple scripts, separate them by spaces. Here is an example | 919 | To add multiple scripts, separate them by spaces. Here is an example |
921 | from the ``libpng`` recipe:: | 920 | from the ``libpng`` recipe:: |
@@ -923,7 +922,7 @@ system and gives an overview of their function and contents. | |||
923 | BINCONFIG = "${bindir}/libpng-config ${bindir}/libpng16-config" | 922 | BINCONFIG = "${bindir}/libpng-config ${bindir}/libpng16-config" |
924 | 923 | ||
925 | :term:`BINCONFIG_GLOB` | 924 | :term:`BINCONFIG_GLOB` |
926 | When inheriting the :ref:`binconfig <ref-classes-binconfig>` class, | 925 | When inheriting the :ref:`ref-classes-binconfig` class, |
927 | this variable specifies a wildcard for configuration scripts that | 926 | this variable specifies a wildcard for configuration scripts that |
928 | need editing. The scripts are edited to correct any paths that have | 927 | need editing. The scripts are edited to correct any paths that have |
929 | been set up during compilation so that they are correct for use when | 928 | been set up during compilation so that they are correct for use when |
@@ -1048,8 +1047,7 @@ system and gives an overview of their function and contents. | |||
1048 | :term:`BUILD_PREFIX` | 1047 | :term:`BUILD_PREFIX` |
1049 | The toolchain binary prefix used for native recipes. The OpenEmbedded | 1048 | The toolchain binary prefix used for native recipes. The OpenEmbedded |
1050 | build system uses the :term:`BUILD_PREFIX` value to set the | 1049 | build system uses the :term:`BUILD_PREFIX` value to set the |
1051 | :term:`TARGET_PREFIX` when building for | 1050 | :term:`TARGET_PREFIX` when building for :ref:`ref-classes-native` recipes. |
1052 | :ref:`native <ref-classes-native>` recipes. | ||
1053 | 1051 | ||
1054 | :term:`BUILD_STRIP` | 1052 | :term:`BUILD_STRIP` |
1055 | Specifies the command to be used to strip debugging symbols from | 1053 | Specifies the command to be used to strip debugging symbols from |
@@ -1060,7 +1058,7 @@ system and gives an overview of their function and contents. | |||
1060 | :term:`BUILD_SYS` | 1058 | :term:`BUILD_SYS` |
1061 | Specifies the system, including the architecture and the operating | 1059 | Specifies the system, including the architecture and the operating |
1062 | system, to use when building for the build host (i.e. when building | 1060 | system, to use when building for the build host (i.e. when building |
1063 | :ref:`native <ref-classes-native>` recipes). | 1061 | :ref:`ref-classes-native` recipes). |
1064 | 1062 | ||
1065 | The OpenEmbedded build system automatically sets this variable based | 1063 | The OpenEmbedded build system automatically sets this variable based |
1066 | on :term:`BUILD_ARCH`, | 1064 | on :term:`BUILD_ARCH`, |
@@ -1080,22 +1078,22 @@ system and gives an overview of their function and contents. | |||
1080 | :term:`BUILDDIR` defaults to ``build`` in the current directory. | 1078 | :term:`BUILDDIR` defaults to ``build`` in the current directory. |
1081 | 1079 | ||
1082 | :term:`BUILDHISTORY_COMMIT` | 1080 | :term:`BUILDHISTORY_COMMIT` |
1083 | When inheriting the :ref:`buildhistory <ref-classes-buildhistory>` | 1081 | When inheriting the :ref:`ref-classes-buildhistory` class, this variable |
1084 | class, this variable specifies whether or not to commit the build | 1082 | specifies whether or not to commit the build history output in a local |
1085 | history output in a local Git repository. If set to "1", this local | 1083 | Git repository. If set to "1", this local repository will be maintained |
1086 | repository will be maintained automatically by the :ref:`buildhistory <ref-classes-buildhistory>` | 1084 | automatically by the :ref:`ref-classes-buildhistory` class and a commit |
1087 | class and a commit will be created on every build for changes to each | 1085 | will be created on every build for changes to each top-level subdirectory |
1088 | top-level subdirectory of the build history output (images, packages, | 1086 | of the build history output (images, packages, and sdk). If you want to |
1089 | and sdk). If you want to track changes to build history over time, | 1087 | track changes to build history over time, you should set this value to |
1090 | you should set this value to "1". | 1088 | "1". |
1091 | 1089 | ||
1092 | By default, the :ref:`buildhistory <ref-classes-buildhistory>` class | 1090 | By default, the :ref:`ref-classes-buildhistory` class |
1093 | enables committing the buildhistory output in a local Git repository:: | 1091 | enables committing the buildhistory output in a local Git repository:: |
1094 | 1092 | ||
1095 | BUILDHISTORY_COMMIT ?= "1" | 1093 | BUILDHISTORY_COMMIT ?= "1" |
1096 | 1094 | ||
1097 | :term:`BUILDHISTORY_COMMIT_AUTHOR` | 1095 | :term:`BUILDHISTORY_COMMIT_AUTHOR` |
1098 | When inheriting the :ref:`buildhistory <ref-classes-buildhistory>` | 1096 | When inheriting the :ref:`ref-classes-buildhistory` |
1099 | class, this variable specifies the author to use for each Git commit. | 1097 | class, this variable specifies the author to use for each Git commit. |
1100 | In order for the :term:`BUILDHISTORY_COMMIT_AUTHOR` variable to work, the | 1098 | In order for the :term:`BUILDHISTORY_COMMIT_AUTHOR` variable to work, the |
1101 | :term:`BUILDHISTORY_COMMIT` variable must | 1099 | :term:`BUILDHISTORY_COMMIT` variable must |
@@ -1106,22 +1104,24 @@ system and gives an overview of their function and contents. | |||
1106 | email@host". Providing an email address or host that is not valid | 1104 | email@host". Providing an email address or host that is not valid |
1107 | does not produce an error. | 1105 | does not produce an error. |
1108 | 1106 | ||
1109 | By default, the :ref:`buildhistory <ref-classes-buildhistory>` class sets the variable as follows:: | 1107 | By default, the :ref:`ref-classes-buildhistory` class sets the variable |
1108 | as follows:: | ||
1110 | 1109 | ||
1111 | BUILDHISTORY_COMMIT_AUTHOR ?= "buildhistory <buildhistory@${DISTRO}>" | 1110 | BUILDHISTORY_COMMIT_AUTHOR ?= "buildhistory <buildhistory@${DISTRO}>" |
1112 | 1111 | ||
1113 | :term:`BUILDHISTORY_DIR` | 1112 | :term:`BUILDHISTORY_DIR` |
1114 | When inheriting the :ref:`buildhistory <ref-classes-buildhistory>` | 1113 | When inheriting the :ref:`ref-classes-buildhistory` |
1115 | class, this variable specifies the directory in which build history | 1114 | class, this variable specifies the directory in which build history |
1116 | information is kept. For more information on how the variable works, | 1115 | information is kept. For more information on how the variable works, |
1117 | see the :ref:`ref-classes-buildhistory` class. | 1116 | see the :ref:`ref-classes-buildhistory` class. |
1118 | 1117 | ||
1119 | By default, the :ref:`buildhistory <ref-classes-buildhistory>` class sets the directory as follows:: | 1118 | By default, the :ref:`ref-classes-buildhistory` class sets the directory |
1119 | as follows:: | ||
1120 | 1120 | ||
1121 | BUILDHISTORY_DIR ?= "${TOPDIR}/buildhistory" | 1121 | BUILDHISTORY_DIR ?= "${TOPDIR}/buildhistory" |
1122 | 1122 | ||
1123 | :term:`BUILDHISTORY_FEATURES` | 1123 | :term:`BUILDHISTORY_FEATURES` |
1124 | When inheriting the :ref:`buildhistory <ref-classes-buildhistory>` | 1124 | When inheriting the :ref:`ref-classes-buildhistory` |
1125 | class, this variable specifies the build history features to be | 1125 | class, this variable specifies the build history features to be |
1126 | enabled. For more information on how build history works, see the | 1126 | enabled. For more information on how build history works, see the |
1127 | ":ref:`dev-manual/build-quality:maintaining build output quality`" | 1127 | ":ref:`dev-manual/build-quality:maintaining build output quality`" |
@@ -1143,13 +1143,13 @@ system and gives an overview of their function and contents. | |||
1143 | This saves one file per task and lists the SHA-256 checksums for | 1143 | This saves one file per task and lists the SHA-256 checksums for |
1144 | each file staged (i.e. the output of the task). | 1144 | each file staged (i.e. the output of the task). |
1145 | 1145 | ||
1146 | By default, the :ref:`buildhistory <ref-classes-buildhistory>` class enables the following | 1146 | By default, the :ref:`ref-classes-buildhistory` class enables the |
1147 | features:: | 1147 | following features:: |
1148 | 1148 | ||
1149 | BUILDHISTORY_FEATURES ?= "image package sdk" | 1149 | BUILDHISTORY_FEATURES ?= "image package sdk" |
1150 | 1150 | ||
1151 | :term:`BUILDHISTORY_IMAGE_FILES` | 1151 | :term:`BUILDHISTORY_IMAGE_FILES` |
1152 | When inheriting the :ref:`buildhistory <ref-classes-buildhistory>` | 1152 | When inheriting the :ref:`ref-classes-buildhistory` |
1153 | class, this variable specifies a list of paths to files copied from | 1153 | class, this variable specifies a list of paths to files copied from |
1154 | the image contents into the build history directory under an | 1154 | the image contents into the build history directory under an |
1155 | "image-files" directory in the directory for the image, so that you | 1155 | "image-files" directory in the directory for the image, so that you |
@@ -1159,39 +1159,39 @@ system and gives an overview of their function and contents. | |||
1159 | any file. Specifying an invalid path does not produce an error. | 1159 | any file. Specifying an invalid path does not produce an error. |
1160 | Consequently, you can include files that might not always be present. | 1160 | Consequently, you can include files that might not always be present. |
1161 | 1161 | ||
1162 | By default, the :ref:`buildhistory <ref-classes-buildhistory>` class provides paths to the | 1162 | By default, the :ref:`ref-classes-buildhistory` class provides paths to |
1163 | following files:: | 1163 | the following files:: |
1164 | 1164 | ||
1165 | BUILDHISTORY_IMAGE_FILES ?= "/etc/passwd /etc/group" | 1165 | BUILDHISTORY_IMAGE_FILES ?= "/etc/passwd /etc/group" |
1166 | 1166 | ||
1167 | :term:`BUILDHISTORY_PATH_PREFIX_STRIP` | 1167 | :term:`BUILDHISTORY_PATH_PREFIX_STRIP` |
1168 | When inheriting the :ref:`buildhistory <ref-classes-buildhistory>` | 1168 | When inheriting the :ref:`ref-classes-buildhistory` |
1169 | class, this variable specifies a common path prefix that should be | 1169 | class, this variable specifies a common path prefix that should be |
1170 | stripped off the beginning of paths in the task signature list when the | 1170 | stripped off the beginning of paths in the task signature list when the |
1171 | ``task`` feature is active in :term:`BUILDHISTORY_FEATURES`. This can be | 1171 | ``task`` feature is active in :term:`BUILDHISTORY_FEATURES`. This can be |
1172 | useful when build history is populated from multiple sources that may not | 1172 | useful when build history is populated from multiple sources that may not |
1173 | all use the same top level directory. | 1173 | all use the same top level directory. |
1174 | 1174 | ||
1175 | By default, the :ref:`buildhistory <ref-classes-buildhistory>` class sets the variable as follows:: | 1175 | By default, the :ref:`ref-classes-buildhistory` class sets the variable |
1176 | as follows:: | ||
1176 | 1177 | ||
1177 | BUILDHISTORY_PATH_PREFIX_STRIP ?= "" | 1178 | BUILDHISTORY_PATH_PREFIX_STRIP ?= "" |
1178 | 1179 | ||
1179 | In this case, no prefixes will be stripped. | 1180 | In this case, no prefixes will be stripped. |
1180 | 1181 | ||
1181 | :term:`BUILDHISTORY_PUSH_REPO` | 1182 | :term:`BUILDHISTORY_PUSH_REPO` |
1182 | When inheriting the :ref:`buildhistory <ref-classes-buildhistory>` | 1183 | When inheriting the :ref:`ref-classes-buildhistory` class, this variable |
1183 | class, this variable optionally specifies a remote repository to | 1184 | optionally specifies a remote repository to which build history pushes |
1184 | which build history pushes Git changes. In order for | 1185 | Git changes. In order for :term:`BUILDHISTORY_PUSH_REPO` to work, |
1185 | :term:`BUILDHISTORY_PUSH_REPO` to work, | 1186 | :term:`BUILDHISTORY_COMMIT` must be set to "1". |
1186 | :term:`BUILDHISTORY_COMMIT` must be set to | ||
1187 | "1". | ||
1188 | 1187 | ||
1189 | The repository should correspond to a remote address that specifies a | 1188 | The repository should correspond to a remote address that specifies a |
1190 | repository as understood by Git, or alternatively to a remote name | 1189 | repository as understood by Git, or alternatively to a remote name |
1191 | that you have set up manually using ``git remote`` within the local | 1190 | that you have set up manually using ``git remote`` within the local |
1192 | repository. | 1191 | repository. |
1193 | 1192 | ||
1194 | By default, the :ref:`buildhistory <ref-classes-buildhistory>` class sets the variable as follows:: | 1193 | By default, the :ref:`ref-classes-buildhistory` class sets the variable |
1194 | as follows:: | ||
1195 | 1195 | ||
1196 | BUILDHISTORY_PUSH_REPO ?= "" | 1196 | BUILDHISTORY_PUSH_REPO ?= "" |
1197 | 1197 | ||
@@ -1224,8 +1224,7 @@ system and gives an overview of their function and contents. | |||
1224 | 1224 | ||
1225 | :term:`BUILDSTATS_BASE` | 1225 | :term:`BUILDSTATS_BASE` |
1226 | Points to the location of the directory that holds build statistics | 1226 | Points to the location of the directory that holds build statistics |
1227 | when you use and enable the | 1227 | when you use and enable the :ref:`ref-classes-buildstats` class. The |
1228 | :ref:`buildstats <ref-classes-buildstats>` class. The | ||
1229 | :term:`BUILDSTATS_BASE` directory defaults to | 1228 | :term:`BUILDSTATS_BASE` directory defaults to |
1230 | ``${``\ :term:`TMPDIR`\ ``}/buildstats/``. | 1229 | ``${``\ :term:`TMPDIR`\ ``}/buildstats/``. |
1231 | 1230 | ||
@@ -1271,9 +1270,8 @@ system and gives an overview of their function and contents. | |||
1271 | An internal variable specifying the special class override that | 1270 | An internal variable specifying the special class override that |
1272 | should currently apply (e.g. "class-target", "class-native", and so | 1271 | should currently apply (e.g. "class-target", "class-native", and so |
1273 | forth). The classes that use this variable (e.g. | 1272 | forth). The classes that use this variable (e.g. |
1274 | :ref:`native <ref-classes-native>`, | 1273 | :ref:`ref-classes-native`, :ref:`ref-classes-nativesdk`, and so forth) |
1275 | :ref:`nativesdk <ref-classes-nativesdk>`, and so forth) set the | 1274 | set the variable to appropriate values. |
1276 | variable to appropriate values. | ||
1277 | 1275 | ||
1278 | .. note:: | 1276 | .. note:: |
1279 | 1277 | ||
@@ -1449,8 +1447,7 @@ system and gives an overview of their function and contents. | |||
1449 | The minimal arguments for GNU configure. | 1447 | The minimal arguments for GNU configure. |
1450 | 1448 | ||
1451 | :term:`CONFLICT_DISTRO_FEATURES` | 1449 | :term:`CONFLICT_DISTRO_FEATURES` |
1452 | When inheriting the | 1450 | When inheriting the :ref:`ref-classes-features_check` |
1453 | :ref:`features_check <ref-classes-features_check>` | ||
1454 | class, this variable identifies distribution features that would be | 1451 | class, this variable identifies distribution features that would be |
1455 | in conflict should the recipe be built. In other words, if the | 1452 | in conflict should the recipe be built. In other words, if the |
1456 | :term:`CONFLICT_DISTRO_FEATURES` variable lists a feature that also | 1453 | :term:`CONFLICT_DISTRO_FEATURES` variable lists a feature that also |
@@ -1466,8 +1463,8 @@ system and gives an overview of their function and contents. | |||
1466 | 1463 | ||
1467 | - Checksums for the image | 1464 | - Checksums for the image |
1468 | 1465 | ||
1469 | An example of :term:`CONVERSION_CMD` from :ref:`image-types | 1466 | An example of :term:`CONVERSION_CMD` from :ref:`ref-classes-image_types` |
1470 | <ref-classes-image_types>` class is:: | 1467 | class is:: |
1471 | 1468 | ||
1472 | CONVERSION_CMD:lzo = "lzop -9 ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}" | 1469 | CONVERSION_CMD:lzo = "lzop -9 ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}" |
1473 | 1470 | ||
@@ -1506,10 +1503,9 @@ system and gives an overview of their function and contents. | |||
1506 | information on providing license text. | 1503 | information on providing license text. |
1507 | 1504 | ||
1508 | :term:`COPYLEFT_LICENSE_EXCLUDE` | 1505 | :term:`COPYLEFT_LICENSE_EXCLUDE` |
1509 | A space-separated list of licenses to exclude from the source | 1506 | A space-separated list of licenses to exclude from the source archived by |
1510 | archived by the :ref:`archiver <ref-classes-archiver>` class. In | 1507 | the :ref:`ref-classes-archiver` class. In other words, if a license in a |
1511 | other words, if a license in a recipe's | 1508 | recipe's :term:`LICENSE` value is in the value of |
1512 | :term:`LICENSE` value is in the value of | ||
1513 | :term:`COPYLEFT_LICENSE_EXCLUDE`, then its source is not archived by the | 1509 | :term:`COPYLEFT_LICENSE_EXCLUDE`, then its source is not archived by the |
1514 | class. | 1510 | class. |
1515 | 1511 | ||
@@ -1520,60 +1516,54 @@ system and gives an overview of their function and contents. | |||
1520 | 1516 | ||
1521 | The default value, which is "CLOSED Proprietary", for | 1517 | The default value, which is "CLOSED Proprietary", for |
1522 | :term:`COPYLEFT_LICENSE_EXCLUDE` is set by the | 1518 | :term:`COPYLEFT_LICENSE_EXCLUDE` is set by the |
1523 | :ref:`copyleft_filter <ref-classes-copyleft_filter>` class, which | 1519 | :ref:`ref-classes-copyleft_filter` class, which |
1524 | is inherited by the :ref:`archiver <ref-classes-archiver>` class. | 1520 | is inherited by the :ref:`ref-classes-archiver` class. |
1525 | 1521 | ||
1526 | :term:`COPYLEFT_LICENSE_INCLUDE` | 1522 | :term:`COPYLEFT_LICENSE_INCLUDE` |
1527 | A space-separated list of licenses to include in the source archived | 1523 | A space-separated list of licenses to include in the source archived |
1528 | by the :ref:`archiver <ref-classes-archiver>` class. In other | 1524 | by the :ref:`ref-classes-archiver` class. In other |
1529 | words, if a license in a recipe's :term:`LICENSE` | 1525 | words, if a license in a recipe's :term:`LICENSE` |
1530 | value is in the value of :term:`COPYLEFT_LICENSE_INCLUDE`, then its | 1526 | value is in the value of :term:`COPYLEFT_LICENSE_INCLUDE`, then its |
1531 | source is archived by the class. | 1527 | source is archived by the class. |
1532 | 1528 | ||
1533 | The default value is set by the | 1529 | The default value is set by the :ref:`ref-classes-copyleft_filter` class, |
1534 | :ref:`copyleft_filter <ref-classes-copyleft_filter>` class, which | 1530 | which is inherited by the :ref:`ref-classes-archiver` class. The default |
1535 | is inherited by the :ref:`archiver <ref-classes-archiver>` class. The default value includes | 1531 | value includes "GPL*", "LGPL*", and "AGPL*". |
1536 | "GPL*", "LGPL*", and "AGPL*". | ||
1537 | 1532 | ||
1538 | :term:`COPYLEFT_PN_EXCLUDE` | 1533 | :term:`COPYLEFT_PN_EXCLUDE` |
1539 | A list of recipes to exclude in the source archived by the | 1534 | A list of recipes to exclude in the source archived by the |
1540 | :ref:`archiver <ref-classes-archiver>` class. The | 1535 | :ref:`ref-classes-archiver` class. The :term:`COPYLEFT_PN_EXCLUDE` |
1541 | :term:`COPYLEFT_PN_EXCLUDE` variable overrides the license inclusion and | 1536 | variable overrides the license inclusion and exclusion caused through the |
1542 | exclusion caused through the | 1537 | :term:`COPYLEFT_LICENSE_INCLUDE` and :term:`COPYLEFT_LICENSE_EXCLUDE` |
1543 | :term:`COPYLEFT_LICENSE_INCLUDE` and | ||
1544 | :term:`COPYLEFT_LICENSE_EXCLUDE` | ||
1545 | variables, respectively. | 1538 | variables, respectively. |
1546 | 1539 | ||
1547 | The default value, which is "" indicating to not explicitly exclude | 1540 | The default value, which is "" indicating to not explicitly exclude |
1548 | any recipes by name, for :term:`COPYLEFT_PN_EXCLUDE` is set by the | 1541 | any recipes by name, for :term:`COPYLEFT_PN_EXCLUDE` is set by the |
1549 | :ref:`copyleft_filter <ref-classes-copyleft_filter>` class, which | 1542 | :ref:`ref-classes-copyleft_filter` class, which is inherited by the |
1550 | is inherited by the :ref:`archiver <ref-classes-archiver>` class. | 1543 | :ref:`ref-classes-archiver` class. |
1551 | 1544 | ||
1552 | :term:`COPYLEFT_PN_INCLUDE` | 1545 | :term:`COPYLEFT_PN_INCLUDE` |
1553 | A list of recipes to include in the source archived by the | 1546 | A list of recipes to include in the source archived by the |
1554 | :ref:`archiver <ref-classes-archiver>` class. The | 1547 | :ref:`ref-classes-archiver` class. The :term:`COPYLEFT_PN_INCLUDE` |
1555 | :term:`COPYLEFT_PN_INCLUDE` variable overrides the license inclusion and | 1548 | variable overrides the license inclusion and exclusion caused through the |
1556 | exclusion caused through the | 1549 | :term:`COPYLEFT_LICENSE_INCLUDE` and :term:`COPYLEFT_LICENSE_EXCLUDE` |
1557 | :term:`COPYLEFT_LICENSE_INCLUDE` and | ||
1558 | :term:`COPYLEFT_LICENSE_EXCLUDE` | ||
1559 | variables, respectively. | 1550 | variables, respectively. |
1560 | 1551 | ||
1561 | The default value, which is "" indicating to not explicitly include | 1552 | The default value, which is "" indicating to not explicitly include |
1562 | any recipes by name, for :term:`COPYLEFT_PN_INCLUDE` is set by the | 1553 | any recipes by name, for :term:`COPYLEFT_PN_INCLUDE` is set by the |
1563 | :ref:`copyleft_filter <ref-classes-copyleft_filter>` class, which | 1554 | :ref:`ref-classes-copyleft_filter` class, which is inherited by the |
1564 | is inherited by the :ref:`archiver <ref-classes-archiver>` class. | 1555 | :ref:`ref-classes-archiver` class. |
1565 | 1556 | ||
1566 | :term:`COPYLEFT_RECIPE_TYPES` | 1557 | :term:`COPYLEFT_RECIPE_TYPES` |
1567 | A space-separated list of recipe types to include in the source | 1558 | A space-separated list of recipe types to include in the source |
1568 | archived by the :ref:`archiver <ref-classes-archiver>` class. | 1559 | archived by the :ref:`archiver <ref-classes-archiver>` class. |
1569 | Recipe types are ``target``, :ref:`native <ref-classes-native>`, | 1560 | Recipe types are ``target``, :ref:`ref-classes-native`, |
1570 | :ref:`nativesdk <ref-classes-nativesdk>`, | 1561 | :ref:`ref-classes-nativesdk`, :ref:`ref-classes-cross`, |
1571 | :ref:`cross <ref-classes-cross>`, :ref:`crosssdk <ref-classes-crosssdk>`, | 1562 | :ref:`ref-classes-crosssdk`, and :ref:`ref-classes-cross-canadian`. |
1572 | and :ref:`cross-canadian <ref-classes-cross-canadian>`. | ||
1573 | 1563 | ||
1574 | The default value, which is "target*", for :term:`COPYLEFT_RECIPE_TYPES` | 1564 | The default value, which is "target*", for :term:`COPYLEFT_RECIPE_TYPES` |
1575 | is set by the :ref:`copyleft_filter <ref-classes-copyleft_filter>` | 1565 | is set by the :ref:`ref-classes-copyleft_filter` class, which is |
1576 | class, which is inherited by the :ref:`archiver <ref-classes-archiver>` class. | 1566 | inherited by the :ref:`ref-classes-archiver` class. |
1577 | 1567 | ||
1578 | :term:`CORE_IMAGE_EXTRA_INSTALL` | 1568 | :term:`CORE_IMAGE_EXTRA_INSTALL` |
1579 | Specifies the list of packages to be added to the image. You should | 1569 | Specifies the list of packages to be added to the image. You should |
@@ -1647,7 +1637,7 @@ system and gives an overview of their function and contents. | |||
1647 | CVE_CHECK_IGNORE += "CVE-2020-15523" | 1637 | CVE_CHECK_IGNORE += "CVE-2020-15523" |
1648 | 1638 | ||
1649 | :term:`CVE_CHECK_SHOW_WARNINGS` | 1639 | :term:`CVE_CHECK_SHOW_WARNINGS` |
1650 | Specifies whether or not the :ref:`cve-check <ref-classes-cve-check>` | 1640 | Specifies whether or not the :ref:`ref-classes-cve-check` |
1651 | class should generate warning messages on the console when unpatched | 1641 | class should generate warning messages on the console when unpatched |
1652 | CVEs are found. The default is "1", but you may wish to set it to "0" if | 1642 | CVEs are found. The default is "1", but you may wish to set it to "0" if |
1653 | you are already examining/processing the logs after the build has | 1643 | you are already examining/processing the logs after the build has |
@@ -1669,7 +1659,7 @@ system and gives an overview of their function and contents. | |||
1669 | against the name in the upstream `NIST CVE database <https://nvd.nist.gov/>`__. | 1659 | against the name in the upstream `NIST CVE database <https://nvd.nist.gov/>`__. |
1670 | 1660 | ||
1671 | The default is ${:term:`BPN`} (except for recipes that inherit the | 1661 | The default is ${:term:`BPN`} (except for recipes that inherit the |
1672 | :ref:`pypi <ref-classes-pypi>` class where it is set based upon | 1662 | :ref:`ref-classes-pypi` class where it is set based upon |
1673 | :term:`PYPI_PACKAGE`). If it does not match the name in the NIST CVE | 1663 | :term:`PYPI_PACKAGE`). If it does not match the name in the NIST CVE |
1674 | database or matches with multiple entries in the database, the default | 1664 | database or matches with multiple entries in the database, the default |
1675 | value needs to be changed. | 1665 | value needs to be changed. |
@@ -1688,12 +1678,12 @@ system and gives an overview of their function and contents. | |||
1688 | :term:`CVE_VERSION` | 1678 | :term:`CVE_VERSION` |
1689 | In a recipe, defines the version used to match the recipe version | 1679 | In a recipe, defines the version used to match the recipe version |
1690 | against the version in the `NIST CVE database <https://nvd.nist.gov/>`__ | 1680 | against the version in the `NIST CVE database <https://nvd.nist.gov/>`__ |
1691 | when usign :ref:`cve-check <ref-classes-cve-check>`. | 1681 | when usign :ref:`ref-classes-cve-check`. |
1692 | 1682 | ||
1693 | The default is ${:term:`PV`} but if recipes use custom version numbers | 1683 | The default is ${:term:`PV`} but if recipes use custom version numbers |
1694 | which do not map to upstream software component release versions and the versions | 1684 | which do not map to upstream software component release versions and the versions |
1695 | used in the CVE database, then this variable can be used to set the | 1685 | used in the CVE database, then this variable can be used to set the |
1696 | version number for :ref:`cve-check <ref-classes-cve-check>`. Example:: | 1686 | version number for :ref:`ref-classes-cve-check`. Example:: |
1697 | 1687 | ||
1698 | CVE_VERSION = "2.39" | 1688 | CVE_VERSION = "2.39" |
1699 | 1689 | ||
@@ -1743,7 +1733,7 @@ system and gives an overview of their function and contents. | |||
1743 | suitable for timestamps. | 1733 | suitable for timestamps. |
1744 | 1734 | ||
1745 | :term:`DEBIAN_NOAUTONAME` | 1735 | :term:`DEBIAN_NOAUTONAME` |
1746 | When the :ref:`debian <ref-classes-debian>` class is inherited, | 1736 | When the :ref:`ref-classes-debian` class is inherited, |
1747 | which is the default behavior, :term:`DEBIAN_NOAUTONAME` specifies a | 1737 | which is the default behavior, :term:`DEBIAN_NOAUTONAME` specifies a |
1748 | particular package should not be renamed according to Debian library | 1738 | particular package should not be renamed according to Debian library |
1749 | package naming. You must use the package name as an override when you | 1739 | package naming. You must use the package name as an override when you |
@@ -1752,7 +1742,7 @@ system and gives an overview of their function and contents. | |||
1752 | DEBIAN_NOAUTONAME:fontconfig-utils = "1" | 1742 | DEBIAN_NOAUTONAME:fontconfig-utils = "1" |
1753 | 1743 | ||
1754 | :term:`DEBIANNAME` | 1744 | :term:`DEBIANNAME` |
1755 | When the :ref:`debian <ref-classes-debian>` class is inherited, | 1745 | When the :ref:`ref-classes-debian` class is inherited, |
1756 | which is the default behavior, :term:`DEBIANNAME` allows you to override | 1746 | which is the default behavior, :term:`DEBIANNAME` allows you to override |
1757 | the library name for an individual package. Overriding the library | 1747 | the library name for an individual package. Overriding the library |
1758 | name in these cases is rare. You must use the package name as an | 1748 | name in these cases is rare. You must use the package name as an |
@@ -1832,7 +1822,7 @@ system and gives an overview of their function and contents. | |||
1832 | the :ref:`ref-tasks-populate_sysroot` task of | 1822 | the :ref:`ref-tasks-populate_sysroot` task of |
1833 | each recipe listed in :term:`DEPENDS`, through a | 1823 | each recipe listed in :term:`DEPENDS`, through a |
1834 | ``[``\ :ref:`deptask <bitbake:bitbake-user-manual/bitbake-user-manual-metadata:variable flags>`\ ``]`` | 1824 | ``[``\ :ref:`deptask <bitbake:bitbake-user-manual/bitbake-user-manual-metadata:variable flags>`\ ``]`` |
1835 | declaration in the :ref:`base <ref-classes-base>` class. | 1825 | declaration in the :ref:`ref-classes-base` class. |
1836 | 1826 | ||
1837 | .. note:: | 1827 | .. note:: |
1838 | 1828 | ||
@@ -1848,7 +1838,7 @@ system and gives an overview of their function and contents. | |||
1848 | DEPENDS = "codegen-native" | 1838 | DEPENDS = "codegen-native" |
1849 | 1839 | ||
1850 | For more | 1840 | For more |
1851 | information, see the :ref:`native <ref-classes-native>` class and | 1841 | information, see the :ref:`ref-classes-native` class and |
1852 | the :term:`EXTRANATIVEPATH` variable. | 1842 | the :term:`EXTRANATIVEPATH` variable. |
1853 | 1843 | ||
1854 | .. note:: | 1844 | .. note:: |
@@ -1903,7 +1893,7 @@ system and gives an overview of their function and contents. | |||
1903 | Points to the area that the OpenEmbedded build system uses to place | 1893 | Points to the area that the OpenEmbedded build system uses to place |
1904 | Debian packages that are ready to be used outside of the build | 1894 | Debian packages that are ready to be used outside of the build |
1905 | system. This variable applies only when :term:`PACKAGE_CLASSES` contains | 1895 | system. This variable applies only when :term:`PACKAGE_CLASSES` contains |
1906 | ":ref:`package_deb <ref-classes-package_deb>`". | 1896 | ":ref:`ref-classes-package_deb`". |
1907 | 1897 | ||
1908 | The BitBake configuration file initially defines the | 1898 | The BitBake configuration file initially defines the |
1909 | :term:`DEPLOY_DIR_DEB` variable as a sub-folder of | 1899 | :term:`DEPLOY_DIR_DEB` variable as a sub-folder of |
@@ -1911,7 +1901,7 @@ system and gives an overview of their function and contents. | |||
1911 | 1901 | ||
1912 | DEPLOY_DIR_DEB = "${DEPLOY_DIR}/deb" | 1902 | DEPLOY_DIR_DEB = "${DEPLOY_DIR}/deb" |
1913 | 1903 | ||
1914 | The :ref:`package_deb <ref-classes-package_deb>` class uses the | 1904 | The :ref:`ref-classes-package_deb` class uses the |
1915 | :term:`DEPLOY_DIR_DEB` variable to make sure the | 1905 | :term:`DEPLOY_DIR_DEB` variable to make sure the |
1916 | :ref:`ref-tasks-package_write_deb` task | 1906 | :ref:`ref-tasks-package_write_deb` task |
1917 | writes Debian packages into the appropriate folder. For more | 1907 | writes Debian packages into the appropriate folder. For more |
@@ -1930,9 +1920,8 @@ system and gives an overview of their function and contents. | |||
1930 | It must not be used directly in recipes when deploying files. Instead, | 1920 | It must not be used directly in recipes when deploying files. Instead, |
1931 | it's only useful when a recipe needs to "read" a file already deployed | 1921 | it's only useful when a recipe needs to "read" a file already deployed |
1932 | by a dependency. So, it should be filled with the contents of | 1922 | by a dependency. So, it should be filled with the contents of |
1933 | :term:`DEPLOYDIR` by the :ref:`deploy <ref-classes-deploy>` class or | 1923 | :term:`DEPLOYDIR` by the :ref:`ref-classes-deploy` class or with the |
1934 | with the contents of :term:`IMGDEPLOYDIR` by the :ref:`image | 1924 | contents of :term:`IMGDEPLOYDIR` by the :ref:`ref-classes-image` class. |
1935 | <ref-classes-image>` class. | ||
1936 | 1925 | ||
1937 | For more information on the structure of the :term:`Build Directory`, see | 1926 | For more information on the structure of the :term:`Build Directory`, see |
1938 | ":ref:`ref-manual/structure:the build directory --- \`\`build/\`\``" section. | 1927 | ":ref:`ref-manual/structure:the build directory --- \`\`build/\`\``" section. |
@@ -1945,16 +1934,15 @@ system and gives an overview of their function and contents. | |||
1945 | Points to the area that the OpenEmbedded build system uses to place | 1934 | Points to the area that the OpenEmbedded build system uses to place |
1946 | IPK packages that are ready to be used outside of the build system. | 1935 | IPK packages that are ready to be used outside of the build system. |
1947 | This variable applies only when :term:`PACKAGE_CLASSES` contains | 1936 | This variable applies only when :term:`PACKAGE_CLASSES` contains |
1948 | ":ref:`package_ipk <ref-classes-package_ipk>`". | 1937 | ":ref:`ref-classes-package_ipk`". |
1949 | 1938 | ||
1950 | The BitBake configuration file initially defines this variable as a | 1939 | The BitBake configuration file initially defines this variable as a |
1951 | sub-folder of :term:`DEPLOY_DIR`:: | 1940 | sub-folder of :term:`DEPLOY_DIR`:: |
1952 | 1941 | ||
1953 | DEPLOY_DIR_IPK = "${DEPLOY_DIR}/ipk" | 1942 | DEPLOY_DIR_IPK = "${DEPLOY_DIR}/ipk" |
1954 | 1943 | ||
1955 | The :ref:`package_ipk <ref-classes-package_ipk>` class uses the | 1944 | The :ref:`ref-classes-package_ipk` class uses the :term:`DEPLOY_DIR_IPK` |
1956 | :term:`DEPLOY_DIR_IPK` variable to make sure the | 1945 | variable to make sure the :ref:`ref-tasks-package_write_ipk` task |
1957 | :ref:`ref-tasks-package_write_ipk` task | ||
1958 | writes IPK packages into the appropriate folder. For more information | 1946 | writes IPK packages into the appropriate folder. For more information |
1959 | on how packaging works, see the | 1947 | on how packaging works, see the |
1960 | ":ref:`overview-manual/concepts:package feeds`" section | 1948 | ":ref:`overview-manual/concepts:package feeds`" section |
@@ -1964,14 +1952,14 @@ system and gives an overview of their function and contents. | |||
1964 | Points to the area that the OpenEmbedded build system uses to place | 1952 | Points to the area that the OpenEmbedded build system uses to place |
1965 | RPM packages that are ready to be used outside of the build system. | 1953 | RPM packages that are ready to be used outside of the build system. |
1966 | This variable applies only when :term:`PACKAGE_CLASSES` contains | 1954 | This variable applies only when :term:`PACKAGE_CLASSES` contains |
1967 | ":ref:`package_rpm <ref-classes-package_rpm>`". | 1955 | ":ref:`ref-classes-package_rpm`". |
1968 | 1956 | ||
1969 | The BitBake configuration file initially defines this variable as a | 1957 | The BitBake configuration file initially defines this variable as a |
1970 | sub-folder of :term:`DEPLOY_DIR`:: | 1958 | sub-folder of :term:`DEPLOY_DIR`:: |
1971 | 1959 | ||
1972 | DEPLOY_DIR_RPM = "${DEPLOY_DIR}/rpm" | 1960 | DEPLOY_DIR_RPM = "${DEPLOY_DIR}/rpm" |
1973 | 1961 | ||
1974 | The :ref:`package_rpm <ref-classes-package_rpm>` class uses the | 1962 | The :ref:`ref-classes-package_rpm` class uses the |
1975 | :term:`DEPLOY_DIR_RPM` variable to make sure the | 1963 | :term:`DEPLOY_DIR_RPM` variable to make sure the |
1976 | :ref:`ref-tasks-package_write_rpm` task | 1964 | :ref:`ref-tasks-package_write_rpm` task |
1977 | writes RPM packages into the appropriate folder. For more information | 1965 | writes RPM packages into the appropriate folder. For more information |
@@ -1983,14 +1971,14 @@ system and gives an overview of their function and contents. | |||
1983 | Points to the area that the OpenEmbedded build system uses to place | 1971 | Points to the area that the OpenEmbedded build system uses to place |
1984 | tarballs that are ready to be used outside of the build system. This | 1972 | tarballs that are ready to be used outside of the build system. This |
1985 | variable applies only when :term:`PACKAGE_CLASSES` contains | 1973 | variable applies only when :term:`PACKAGE_CLASSES` contains |
1986 | ":ref:`package_tar <ref-classes-package_tar>`". | 1974 | ":ref:`ref-classes-package_tar`". |
1987 | 1975 | ||
1988 | The BitBake configuration file initially defines this variable as a | 1976 | The BitBake configuration file initially defines this variable as a |
1989 | sub-folder of :term:`DEPLOY_DIR`:: | 1977 | sub-folder of :term:`DEPLOY_DIR`:: |
1990 | 1978 | ||
1991 | DEPLOY_DIR_TAR = "${DEPLOY_DIR}/tar" | 1979 | DEPLOY_DIR_TAR = "${DEPLOY_DIR}/tar" |
1992 | 1980 | ||
1993 | The :ref:`package_tar <ref-classes-package_tar>` class uses the | 1981 | The :ref:`ref-classes-package_tar` class uses the |
1994 | :term:`DEPLOY_DIR_TAR` variable to make sure the | 1982 | :term:`DEPLOY_DIR_TAR` variable to make sure the |
1995 | :ref:`ref-tasks-package_write_tar` task | 1983 | :ref:`ref-tasks-package_write_tar` task |
1996 | writes TAR packages into the appropriate folder. For more information | 1984 | writes TAR packages into the appropriate folder. For more information |
@@ -1999,13 +1987,13 @@ system and gives an overview of their function and contents. | |||
1999 | in the Yocto Project Overview and Concepts Manual. | 1987 | in the Yocto Project Overview and Concepts Manual. |
2000 | 1988 | ||
2001 | :term:`DEPLOYDIR` | 1989 | :term:`DEPLOYDIR` |
2002 | When inheriting the :ref:`deploy <ref-classes-deploy>` class, the | 1990 | When inheriting the :ref:`ref-classes-deploy` class, the |
2003 | :term:`DEPLOYDIR` points to a temporary work area for deployed files that | 1991 | :term:`DEPLOYDIR` points to a temporary work area for deployed files that |
2004 | is set in the :ref:`deploy <ref-classes-deploy>` class as follows:: | 1992 | is set in the :ref:`ref-classes-deploy` class as follows:: |
2005 | 1993 | ||
2006 | DEPLOYDIR = "${WORKDIR}/deploy-${PN}" | 1994 | DEPLOYDIR = "${WORKDIR}/deploy-${PN}" |
2007 | 1995 | ||
2008 | Recipes inheriting the :ref:`deploy <ref-classes-deploy>` class should copy files to be | 1996 | Recipes inheriting the :ref:`ref-classes-deploy` class should copy files to be |
2009 | deployed into :term:`DEPLOYDIR`, and the class will take care of copying | 1997 | deployed into :term:`DEPLOYDIR`, and the class will take care of copying |
2010 | them into :term:`DEPLOY_DIR_IMAGE` | 1998 | them into :term:`DEPLOY_DIR_IMAGE` |
2011 | afterwards. | 1999 | afterwards. |
@@ -2141,10 +2129,9 @@ system and gives an overview of their function and contents. | |||
2141 | :term:`DISTRO_FEATURES_FILTER_NATIVESDK` | 2129 | :term:`DISTRO_FEATURES_FILTER_NATIVESDK` |
2142 | Specifies a list of features that if present in the target | 2130 | Specifies a list of features that if present in the target |
2143 | :term:`DISTRO_FEATURES` value should be included in | 2131 | :term:`DISTRO_FEATURES` value should be included in |
2144 | :term:`DISTRO_FEATURES` when building | 2132 | :term:`DISTRO_FEATURES` when building :ref:`ref-classes-nativesdk` |
2145 | :ref:`nativesdk <ref-classes-nativesdk>` recipes. This variable is used | 2133 | recipes. This variable is used in addition to the features filtered using |
2146 | in addition to the features filtered using the | 2134 | the :term:`DISTRO_FEATURES_NATIVESDK` variable. |
2147 | :term:`DISTRO_FEATURES_NATIVESDK` variable. | ||
2148 | 2135 | ||
2149 | :term:`DISTRO_FEATURES_NATIVE` | 2136 | :term:`DISTRO_FEATURES_NATIVE` |
2150 | Specifies a list of features that should be included in | 2137 | Specifies a list of features that should be included in |
@@ -2157,7 +2144,7 @@ system and gives an overview of their function and contents. | |||
2157 | :term:`DISTRO_FEATURES_NATIVESDK` | 2144 | :term:`DISTRO_FEATURES_NATIVESDK` |
2158 | Specifies a list of features that should be included in | 2145 | Specifies a list of features that should be included in |
2159 | :term:`DISTRO_FEATURES` when building | 2146 | :term:`DISTRO_FEATURES` when building |
2160 | :ref:`nativesdk <ref-classes-nativesdk>` recipes. This variable is used | 2147 | :ref:`ref-classes-nativesdk` recipes. This variable is used |
2161 | in addition to the features filtered using the | 2148 | in addition to the features filtered using the |
2162 | :term:`DISTRO_FEATURES_FILTER_NATIVESDK` variable. | 2149 | :term:`DISTRO_FEATURES_FILTER_NATIVESDK` variable. |
2163 | 2150 | ||
@@ -2240,7 +2227,7 @@ system and gives an overview of their function and contents. | |||
2240 | Wiki page. | 2227 | Wiki page. |
2241 | 2228 | ||
2242 | :term:`DOC_COMPRESS` | 2229 | :term:`DOC_COMPRESS` |
2243 | When inheriting the :ref:`compress_doc <ref-classes-compress_doc>` | 2230 | When inheriting the :ref:`ref-classes-compress_doc` |
2244 | class, this variable sets the compression policy used when the | 2231 | class, this variable sets the compression policy used when the |
2245 | OpenEmbedded build system compresses man pages and info pages. By | 2232 | OpenEmbedded build system compresses man pages and info pages. By |
2246 | default, the compression method used is gz (gzip). Other policies | 2233 | default, the compression method used is gz (gzip). Other policies |
@@ -2255,9 +2242,8 @@ system and gives an overview of their function and contents. | |||
2255 | :term:`EFI_PROVIDER` variable specifies the EFI bootloader to use. The | 2242 | :term:`EFI_PROVIDER` variable specifies the EFI bootloader to use. The |
2256 | default is "grub-efi", but "systemd-boot" can be used instead. | 2243 | default is "grub-efi", but "systemd-boot" can be used instead. |
2257 | 2244 | ||
2258 | See the :ref:`systemd-boot <ref-classes-systemd-boot>` and | 2245 | See the :ref:`ref-classes-systemd-boot` and :ref:`ref-classes-image-live` |
2259 | :ref:`image-live <ref-classes-image-live>` classes for more | 2246 | classes for more information. |
2260 | information. | ||
2261 | 2247 | ||
2262 | :term:`ENABLE_BINARY_LOCALE_GENERATION` | 2248 | :term:`ENABLE_BINARY_LOCALE_GENERATION` |
2263 | Variable that controls which locales for ``glibc`` are generated | 2249 | Variable that controls which locales for ``glibc`` are generated |
@@ -2265,11 +2251,10 @@ system and gives an overview of their function and contents. | |||
2265 | less). | 2251 | less). |
2266 | 2252 | ||
2267 | :term:`ERR_REPORT_DIR` | 2253 | :term:`ERR_REPORT_DIR` |
2268 | When used with the :ref:`report-error <ref-classes-report-error>` | 2254 | When used with the :ref:`ref-classes-report-error` class, specifies the |
2269 | class, specifies the path used for storing the debug files created by | 2255 | path used for storing the debug files created by the :ref:`error reporting |
2270 | the :ref:`error reporting | 2256 | tool <dev-manual/error-reporting-tool:using the error reporting tool>`, |
2271 | tool <dev-manual/error-reporting-tool:using the error reporting tool>`, which | 2257 | which allows you to submit build errors you encounter to a central |
2272 | allows you to submit build errors you encounter to a central | ||
2273 | database. By default, the value of this variable is | 2258 | database. By default, the value of this variable is |
2274 | ``${``\ :term:`LOG_DIR`\ ``}/error-report``. | 2259 | ``${``\ :term:`LOG_DIR`\ ``}/error-report``. |
2275 | 2260 | ||
@@ -2413,8 +2398,7 @@ system and gives an overview of their function and contents. | |||
2413 | When kernel tools are available in the tree, they are preferred over | 2398 | When kernel tools are available in the tree, they are preferred over |
2414 | any externally installed tools. Setting the :term:`EXTERNAL_KERNEL_TOOLS` | 2399 | any externally installed tools. Setting the :term:`EXTERNAL_KERNEL_TOOLS` |
2415 | variable tells the OpenEmbedded build system to prefer the installed | 2400 | variable tells the OpenEmbedded build system to prefer the installed |
2416 | external tools. See the | 2401 | external tools. See the :ref:`ref-classes-kernel-yocto` class in |
2417 | :ref:`kernel-yocto <ref-classes-kernel-yocto>` class in | ||
2418 | ``meta/classes-recipe`` to see how the variable is used. | 2402 | ``meta/classes-recipe`` to see how the variable is used. |
2419 | 2403 | ||
2420 | :term:`EXTERNAL_TOOLCHAIN` | 2404 | :term:`EXTERNAL_TOOLCHAIN` |
@@ -2424,7 +2408,7 @@ system and gives an overview of their function and contents. | |||
2424 | installed. | 2408 | installed. |
2425 | 2409 | ||
2426 | :term:`EXTERNALSRC` | 2410 | :term:`EXTERNALSRC` |
2427 | When inheriting the :ref:`externalsrc <ref-classes-externalsrc>` | 2411 | When inheriting the :ref:`ref-classes-externalsrc` |
2428 | class, this variable points to the source tree, which is outside of | 2412 | class, this variable points to the source tree, which is outside of |
2429 | the OpenEmbedded build system. When set, this variable sets the | 2413 | the OpenEmbedded build system. When set, this variable sets the |
2430 | :term:`S` variable, which is what the OpenEmbedded build | 2414 | :term:`S` variable, which is what the OpenEmbedded build |
@@ -2436,7 +2420,7 @@ system and gives an overview of their function and contents. | |||
2436 | section in the Yocto Project Development Tasks Manual. | 2420 | section in the Yocto Project Development Tasks Manual. |
2437 | 2421 | ||
2438 | :term:`EXTERNALSRC_BUILD` | 2422 | :term:`EXTERNALSRC_BUILD` |
2439 | When inheriting the :ref:`externalsrc <ref-classes-externalsrc>` | 2423 | When inheriting the :ref:`ref-classes-externalsrc` |
2440 | class, this variable points to the directory in which the recipe's | 2424 | class, this variable points to the directory in which the recipe's |
2441 | source code is built, which is outside of the OpenEmbedded build | 2425 | source code is built, which is outside of the OpenEmbedded build |
2442 | system. When set, this variable sets the :term:`B` variable, | 2426 | system. When set, this variable sets the :term:`B` variable, |
@@ -2449,7 +2433,7 @@ system and gives an overview of their function and contents. | |||
2449 | section in the Yocto Project Development Tasks Manual. | 2433 | section in the Yocto Project Development Tasks Manual. |
2450 | 2434 | ||
2451 | :term:`EXTRA_AUTORECONF` | 2435 | :term:`EXTRA_AUTORECONF` |
2452 | For recipes inheriting the :ref:`autotools <ref-classes-autotools>` | 2436 | For recipes inheriting the :ref:`ref-classes-autotools` |
2453 | class, you can use :term:`EXTRA_AUTORECONF` to specify extra options to | 2437 | class, you can use :term:`EXTRA_AUTORECONF` to specify extra options to |
2454 | pass to the ``autoreconf`` command that is executed during the | 2438 | pass to the ``autoreconf`` command that is executed during the |
2455 | :ref:`ref-tasks-configure` task. | 2439 | :ref:`ref-tasks-configure` task. |
@@ -2522,7 +2506,7 @@ system and gives an overview of their function and contents. | |||
2522 | 2506 | ||
2523 | :term:`EXTRA_OECMAKE` | 2507 | :term:`EXTRA_OECMAKE` |
2524 | Additional `CMake <https://cmake.org/overview/>`__ options. See the | 2508 | Additional `CMake <https://cmake.org/overview/>`__ options. See the |
2525 | :ref:`cmake <ref-classes-cmake>` class for additional information. | 2509 | :ref:`ref-classes-cmake` class for additional information. |
2526 | 2510 | ||
2527 | :term:`EXTRA_OECONF` | 2511 | :term:`EXTRA_OECONF` |
2528 | Additional ``configure`` script options. See | 2512 | Additional ``configure`` script options. See |
@@ -2540,21 +2524,22 @@ system and gives an overview of their function and contents. | |||
2540 | :term:`EXTRA_OEMAKE` to pass the required flags. | 2524 | :term:`EXTRA_OEMAKE` to pass the required flags. |
2541 | 2525 | ||
2542 | :term:`EXTRA_OESCONS` | 2526 | :term:`EXTRA_OESCONS` |
2543 | When inheriting the :ref:`scons <ref-classes-scons>` class, this | 2527 | When inheriting the :ref:`ref-classes-scons` class, this |
2544 | variable specifies additional configuration options you want to pass | 2528 | variable specifies additional configuration options you want to pass |
2545 | to the ``scons`` command line. | 2529 | to the ``scons`` command line. |
2546 | 2530 | ||
2547 | :term:`EXTRA_USERS_PARAMS` | 2531 | :term:`EXTRA_USERS_PARAMS` |
2548 | When inheriting the :ref:`extrausers <ref-classes-extrausers>` | 2532 | When inheriting the :ref:`ref-classes-extrausers` |
2549 | class, this variable provides image level user and group operations. | 2533 | class, this variable provides image level user and group operations. |
2550 | This is a more global method of providing user and group | 2534 | This is a more global method of providing user and group |
2551 | configuration as compared to using the | 2535 | configuration as compared to using the |
2552 | :ref:`useradd <ref-classes-useradd>` class, which ties user and | 2536 | :ref:`ref-classes-useradd` class, which ties user and |
2553 | group configurations to a specific recipe. | 2537 | group configurations to a specific recipe. |
2554 | 2538 | ||
2555 | The set list of commands you can configure using the | 2539 | The set list of commands you can configure using the |
2556 | :term:`EXTRA_USERS_PARAMS` is shown in the :ref:`extrausers <ref-classes-extrausers>` class. These | 2540 | :term:`EXTRA_USERS_PARAMS` is shown in the |
2557 | commands map to the normal Unix commands of the same names:: | 2541 | :ref:`ref-classes-extrausers` class. These commands map to the normal |
2542 | Unix commands of the same names:: | ||
2558 | 2543 | ||
2559 | # EXTRA_USERS_PARAMS = "\ | 2544 | # EXTRA_USERS_PARAMS = "\ |
2560 | # useradd -p '' tester; \ | 2545 | # useradd -p '' tester; \ |
@@ -2892,7 +2877,7 @@ system and gives an overview of their function and contents. | |||
2892 | 2877 | ||
2893 | :term:`FIT_DESC` | 2878 | :term:`FIT_DESC` |
2894 | Specifies the description string encoded into a fitImage. The default | 2879 | Specifies the description string encoded into a fitImage. The default |
2895 | value is set by the :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` | 2880 | value is set by the :ref:`ref-classes-kernel-fitimage` |
2896 | class as follows:: | 2881 | class as follows:: |
2897 | 2882 | ||
2898 | FIT_DESC ?= "U-Boot fitImage for ${DISTRO_NAME}/${PV}/${MACHINE}" | 2883 | FIT_DESC ?= "U-Boot fitImage for ${DISTRO_NAME}/${PV}/${MACHINE}" |
@@ -2938,7 +2923,7 @@ system and gives an overview of their function and contents. | |||
2938 | The default value is "pkcs-1.5". | 2923 | The default value is "pkcs-1.5". |
2939 | 2924 | ||
2940 | :term:`FIT_SIGN_INDIVIDUAL` | 2925 | :term:`FIT_SIGN_INDIVIDUAL` |
2941 | If set to "1", then the :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` | 2926 | If set to "1", then the :ref:`ref-classes-kernel-fitimage` |
2942 | class will sign the kernel, dtb and ramdisk images individually in addition | 2927 | class will sign the kernel, dtb and ramdisk images individually in addition |
2943 | to signing the fitImage itself. This could be useful if you are | 2928 | to signing the fitImage itself. This could be useful if you are |
2944 | intending to verify signatures in another context than booting via | 2929 | intending to verify signatures in another context than booting via |
@@ -2949,14 +2934,14 @@ system and gives an overview of their function and contents. | |||
2949 | value is "2048". | 2934 | value is "2048". |
2950 | 2935 | ||
2951 | :term:`FONT_EXTRA_RDEPENDS` | 2936 | :term:`FONT_EXTRA_RDEPENDS` |
2952 | When inheriting the :ref:`fontcache <ref-classes-fontcache>` class, | 2937 | When inheriting the :ref:`ref-classes-fontcache` class, |
2953 | this variable specifies the runtime dependencies for font packages. | 2938 | this variable specifies the runtime dependencies for font packages. |
2954 | By default, the :term:`FONT_EXTRA_RDEPENDS` is set to "fontconfig-utils". | 2939 | By default, the :term:`FONT_EXTRA_RDEPENDS` is set to "fontconfig-utils". |
2955 | 2940 | ||
2956 | :term:`FONT_PACKAGES` | 2941 | :term:`FONT_PACKAGES` |
2957 | When inheriting the :ref:`fontcache <ref-classes-fontcache>` class, | 2942 | When inheriting the :ref:`ref-classes-fontcache` class, this variable |
2958 | this variable identifies packages containing font files that need to | 2943 | identifies packages containing font files that need to be cached by |
2959 | be cached by Fontconfig. By default, the :ref:`fontcache <ref-classes-fontcache>` class assumes | 2944 | Fontconfig. By default, the :ref:`ref-classes-fontcache` class assumes |
2960 | that fonts are in the recipe's main package (i.e. | 2945 | that fonts are in the recipe's main package (i.e. |
2961 | ``${``\ :term:`PN`\ ``}``). Use this variable if fonts you | 2946 | ``${``\ :term:`PN`\ ``}``). Use this variable if fonts you |
2962 | need are in a package other than that main package. | 2947 | need are in a package other than that main package. |
@@ -3007,7 +2992,7 @@ system and gives an overview of their function and contents. | |||
3007 | when it is cloned. | 2992 | when it is cloned. |
3008 | 2993 | ||
3009 | :term:`GITHUB_BASE_URI` | 2994 | :term:`GITHUB_BASE_URI` |
3010 | When inheriting the :ref:`github-releases <ref-classes-github-releases>` | 2995 | When inheriting the :ref:`ref-classes-github-releases` |
3011 | class, specifies the base URL for fetching releases for the github | 2996 | class, specifies the base URL for fetching releases for the github |
3012 | project you wish to fetch sources from. The default value is as follows:: | 2997 | project you wish to fetch sources from. The default value is as follows:: |
3013 | 2998 | ||
@@ -3028,7 +3013,7 @@ system and gives an overview of their function and contents. | |||
3028 | GLIBC_GENERATE_LOCALES = "en_GB.UTF-8 en_US.UTF-8" | 3013 | GLIBC_GENERATE_LOCALES = "en_GB.UTF-8 en_US.UTF-8" |
3029 | 3014 | ||
3030 | :term:`GROUPADD_PARAM` | 3015 | :term:`GROUPADD_PARAM` |
3031 | When inheriting the :ref:`useradd <ref-classes-useradd>` class, | 3016 | When inheriting the :ref:`ref-classes-useradd` class, |
3032 | this variable specifies for a package what parameters should be | 3017 | this variable specifies for a package what parameters should be |
3033 | passed to the ``groupadd`` command if you wish to add a group to the | 3018 | passed to the ``groupadd`` command if you wish to add a group to the |
3034 | system when the package is installed. | 3019 | system when the package is installed. |
@@ -3041,7 +3026,7 @@ system and gives an overview of their function and contents. | |||
3041 | ``groupadd``, see https://linux.die.net/man/8/groupadd. | 3026 | ``groupadd``, see https://linux.die.net/man/8/groupadd. |
3042 | 3027 | ||
3043 | :term:`GROUPMEMS_PARAM` | 3028 | :term:`GROUPMEMS_PARAM` |
3044 | When inheriting the :ref:`useradd <ref-classes-useradd>` class, | 3029 | When inheriting the :ref:`ref-classes-useradd` class, |
3045 | this variable specifies for a package what parameters should be | 3030 | this variable specifies for a package what parameters should be |
3046 | passed to the ``groupmems`` command if you wish to modify the members | 3031 | passed to the ``groupmems`` command if you wish to modify the members |
3047 | of a group when the package is installed. | 3032 | of a group when the package is installed. |
@@ -3055,7 +3040,7 @@ system and gives an overview of their function and contents. | |||
3055 | ``local.conf`` or distribution configuration file to enable graphics | 3040 | ``local.conf`` or distribution configuration file to enable graphics |
3056 | and serial in the menu. | 3041 | and serial in the menu. |
3057 | 3042 | ||
3058 | See the :ref:`grub-efi <ref-classes-grub-efi>` class for more | 3043 | See the :ref:`ref-classes-grub-efi` class for more |
3059 | information on how this variable is used. | 3044 | information on how this variable is used. |
3060 | 3045 | ||
3061 | :term:`GRUB_OPTS` | 3046 | :term:`GRUB_OPTS` |
@@ -3064,7 +3049,7 @@ system and gives an overview of their function and contents. | |||
3064 | multiple options. | 3049 | multiple options. |
3065 | 3050 | ||
3066 | The :term:`GRUB_OPTS` variable is optional. See the | 3051 | The :term:`GRUB_OPTS` variable is optional. See the |
3067 | :ref:`grub-efi <ref-classes-grub-efi>` class for more information | 3052 | :ref:`ref-classes-grub-efi` class for more information |
3068 | on how this variable is used. | 3053 | on how this variable is used. |
3069 | 3054 | ||
3070 | :term:`GRUB_TIMEOUT` | 3055 | :term:`GRUB_TIMEOUT` |
@@ -3072,12 +3057,11 @@ system and gives an overview of their function and contents. | |||
3072 | GNU GRand Unified Bootloader (GRUB). | 3057 | GNU GRand Unified Bootloader (GRUB). |
3073 | 3058 | ||
3074 | The :term:`GRUB_TIMEOUT` variable is optional. See the | 3059 | The :term:`GRUB_TIMEOUT` variable is optional. See the |
3075 | :ref:`grub-efi <ref-classes-grub-efi>` class for more information | 3060 | :ref:`ref-classes-grub-efi` class for more information |
3076 | on how this variable is used. | 3061 | on how this variable is used. |
3077 | 3062 | ||
3078 | :term:`GTKIMMODULES_PACKAGES` | 3063 | :term:`GTKIMMODULES_PACKAGES` |
3079 | When inheriting the | 3064 | When inheriting the :ref:`ref-classes-gtk-immodules-cache` class, |
3080 | :ref:`gtk-immodules-cache <ref-classes-gtk-immodules-cache>` class, | ||
3081 | this variable specifies the packages that contain the GTK+ input | 3065 | this variable specifies the packages that contain the GTK+ input |
3082 | method modules being installed when the modules are in packages other | 3066 | method modules being installed when the modules are in packages other |
3083 | than the main package. | 3067 | than the main package. |
@@ -3180,7 +3164,7 @@ system and gives an overview of their function and contents. | |||
3180 | :term:`ICECC_CLASS_DISABLE` | 3164 | :term:`ICECC_CLASS_DISABLE` |
3181 | Identifies user classes that you do not want the Icecream distributed | 3165 | Identifies user classes that you do not want the Icecream distributed |
3182 | compile support to consider. This variable is used by the | 3166 | compile support to consider. This variable is used by the |
3183 | :ref:`icecc <ref-classes-icecc>` class. You set this variable in | 3167 | :ref:`ref-classes-icecc` class. You set this variable in |
3184 | your ``local.conf`` file. | 3168 | your ``local.conf`` file. |
3185 | 3169 | ||
3186 | When you list classes using this variable, the recipes inheriting | 3170 | When you list classes using this variable, the recipes inheriting |
@@ -3204,7 +3188,7 @@ system and gives an overview of their function and contents. | |||
3204 | 3188 | ||
3205 | :term:`ICECC_ENV_EXEC` | 3189 | :term:`ICECC_ENV_EXEC` |
3206 | Points to the ``icecc-create-env`` script that you provide. This | 3190 | Points to the ``icecc-create-env`` script that you provide. This |
3207 | variable is used by the :ref:`icecc <ref-classes-icecc>` class. You | 3191 | variable is used by the :ref:`ref-classes-icecc` class. You |
3208 | set this variable in your ``local.conf`` file. | 3192 | set this variable in your ``local.conf`` file. |
3209 | 3193 | ||
3210 | If you do not point to a script that you provide, the OpenEmbedded | 3194 | If you do not point to a script that you provide, the OpenEmbedded |
@@ -3241,13 +3225,13 @@ system and gives an overview of their function and contents. | |||
3241 | :term:`ICECC_PATH` | 3225 | :term:`ICECC_PATH` |
3242 | The location of the ``icecc`` binary. You can set this variable in | 3226 | The location of the ``icecc`` binary. You can set this variable in |
3243 | your ``local.conf`` file. If your ``local.conf`` file does not define | 3227 | your ``local.conf`` file. If your ``local.conf`` file does not define |
3244 | this variable, the :ref:`icecc <ref-classes-icecc>` class attempts | 3228 | this variable, the :ref:`ref-classes-icecc` class attempts |
3245 | to define it by locating ``icecc`` using ``which``. | 3229 | to define it by locating ``icecc`` using ``which``. |
3246 | 3230 | ||
3247 | :term:`ICECC_RECIPE_DISABLE` | 3231 | :term:`ICECC_RECIPE_DISABLE` |
3248 | Identifies user recipes that you do not want the Icecream distributed | 3232 | Identifies user recipes that you do not want the Icecream distributed |
3249 | compile support to consider. This variable is used by the | 3233 | compile support to consider. This variable is used by the |
3250 | :ref:`icecc <ref-classes-icecc>` class. You set this variable in | 3234 | :ref:`ref-classes-icecc` class. You set this variable in |
3251 | your ``local.conf`` file. | 3235 | your ``local.conf`` file. |
3252 | 3236 | ||
3253 | When you list recipes using this variable, you are excluding them | 3237 | When you list recipes using this variable, you are excluding them |
@@ -3259,7 +3243,7 @@ system and gives an overview of their function and contents. | |||
3259 | :term:`PARALLEL_MAKE` variable that you want to | 3243 | :term:`PARALLEL_MAKE` variable that you want to |
3260 | force remote distributed compilation on using the Icecream | 3244 | force remote distributed compilation on using the Icecream |
3261 | distributed compile support. This variable is used by the | 3245 | distributed compile support. This variable is used by the |
3262 | :ref:`icecc <ref-classes-icecc>` class. You set this variable in | 3246 | :ref:`ref-classes-icecc` class. You set this variable in |
3263 | your ``local.conf`` file. | 3247 | your ``local.conf`` file. |
3264 | 3248 | ||
3265 | :term:`IMAGE_BASENAME` | 3249 | :term:`IMAGE_BASENAME` |
@@ -3301,12 +3285,12 @@ system and gives an overview of their function and contents. | |||
3301 | ":doc:`/ref-manual/kickstart`" chapter. | 3285 | ":doc:`/ref-manual/kickstart`" chapter. |
3302 | 3286 | ||
3303 | :term:`IMAGE_BUILDINFO_FILE` | 3287 | :term:`IMAGE_BUILDINFO_FILE` |
3304 | When using the :ref:`image-buildinfo <ref-classes-image-buildinfo>` class, | 3288 | When using the :ref:`ref-classes-image-buildinfo` class, |
3305 | specifies the file in the image to write the build information into. The | 3289 | specifies the file in the image to write the build information into. The |
3306 | default value is "``${sysconfdir}/buildinfo``". | 3290 | default value is "``${sysconfdir}/buildinfo``". |
3307 | 3291 | ||
3308 | :term:`IMAGE_BUILDINFO_VARS` | 3292 | :term:`IMAGE_BUILDINFO_VARS` |
3309 | When using the :ref:`image-buildinfo <ref-classes-image-buildinfo>` class, | 3293 | When using the :ref:`ref-classes-image-buildinfo` class, |
3310 | specifies the list of variables to include in the `Build Configuration` | 3294 | specifies the list of variables to include in the `Build Configuration` |
3311 | section of the output file (as a space-separated list). Defaults to | 3295 | section of the output file (as a space-separated list). Defaults to |
3312 | ":term:`DISTRO` :term:`DISTRO_VERSION`". | 3296 | ":term:`DISTRO` :term:`DISTRO_VERSION`". |
@@ -3331,7 +3315,7 @@ system and gives an overview of their function and contents. | |||
3331 | 3315 | ||
3332 | You typically do not need to set this variable unless you are adding | 3316 | You typically do not need to set this variable unless you are adding |
3333 | support for a new image type. For more examples on how to set this | 3317 | support for a new image type. For more examples on how to set this |
3334 | variable, see the :ref:`image_types <ref-classes-image_types>` | 3318 | variable, see the :ref:`ref-classes-image_types` |
3335 | class file, which is ``meta/classes-recipe/image_types.bbclass``. | 3319 | class file, which is ``meta/classes-recipe/image_types.bbclass``. |
3336 | 3320 | ||
3337 | :term:`IMAGE_DEVICE_TABLES` | 3321 | :term:`IMAGE_DEVICE_TABLES` |
@@ -3421,16 +3405,15 @@ system and gives an overview of their function and contents. | |||
3421 | 3405 | ||
3422 | :term:`IMAGE_INSTALL` | 3406 | :term:`IMAGE_INSTALL` |
3423 | Used by recipes to specify the packages to install into an image | 3407 | Used by recipes to specify the packages to install into an image |
3424 | through the :ref:`image <ref-classes-image>` class. Use the | 3408 | through the :ref:`ref-classes-image` class. Use the |
3425 | :term:`IMAGE_INSTALL` variable with care to avoid ordering issues. | 3409 | :term:`IMAGE_INSTALL` variable with care to avoid ordering issues. |
3426 | 3410 | ||
3427 | Image recipes set :term:`IMAGE_INSTALL` to specify the packages to | 3411 | Image recipes set :term:`IMAGE_INSTALL` to specify the packages to |
3428 | install into an image through :ref:`ref-classes-image`. Additionally, | 3412 | install into an image through :ref:`ref-classes-image`. Additionally, |
3429 | there are "helper" classes such as the | 3413 | there are "helper" classes such as the :ref:`ref-classes-core-image` |
3430 | :ref:`core-image <ref-classes-core-image>` class which can | 3414 | class which can take lists used with :term:`IMAGE_FEATURES` and turn |
3431 | take lists used with :term:`IMAGE_FEATURES` and turn them into | 3415 | them into auto-generated entries in :term:`IMAGE_INSTALL` in addition |
3432 | auto-generated entries in :term:`IMAGE_INSTALL` in addition to its | 3416 | to its default contents. |
3433 | default contents. | ||
3434 | 3417 | ||
3435 | When you use this variable, it is best to use it as follows:: | 3418 | When you use this variable, it is best to use it as follows:: |
3436 | 3419 | ||
@@ -3563,19 +3546,16 @@ system and gives an overview of their function and contents. | |||
3563 | :term:`IMAGE_PKGTYPE` | 3546 | :term:`IMAGE_PKGTYPE` |
3564 | Defines the package type (i.e. DEB, RPM, IPK, or TAR) used by the | 3547 | Defines the package type (i.e. DEB, RPM, IPK, or TAR) used by the |
3565 | OpenEmbedded build system. The variable is defined appropriately by | 3548 | OpenEmbedded build system. The variable is defined appropriately by |
3566 | the :ref:`package_deb <ref-classes-package_deb>`, | 3549 | the :ref:`ref-classes-package_deb`, :ref:`ref-classes-package_rpm`, |
3567 | :ref:`package_rpm <ref-classes-package_rpm>`, | 3550 | :ref:`ref-classes-package_ipk`, or :ref:`ref-classes-package_tar` class. |
3568 | :ref:`package_ipk <ref-classes-package_ipk>`, or | ||
3569 | :ref:`package_tar <ref-classes-package_tar>` class. | ||
3570 | 3551 | ||
3571 | .. note:: | 3552 | .. note:: |
3572 | 3553 | ||
3573 | The ``package_tar`` class is broken and is not supported. It is | 3554 | The ``package_tar`` class is broken and is not supported. It is |
3574 | recommended that you do not use it. | 3555 | recommended that you do not use it. |
3575 | 3556 | ||
3576 | The :ref:`populate_sdk_* <ref-classes-populate-sdk-*>` and | 3557 | The :ref:`ref-classes-populate-sdk-*` and :ref:`ref-classes-image` |
3577 | :ref:`image <ref-classes-image>` classes use the :term:`IMAGE_PKGTYPE` | 3558 | classes use the :term:`IMAGE_PKGTYPE` for packaging up images and SDKs. |
3578 | for packaging up images and SDKs. | ||
3579 | 3559 | ||
3580 | You should not set the :term:`IMAGE_PKGTYPE` manually. Rather, the | 3560 | You should not set the :term:`IMAGE_PKGTYPE` manually. Rather, the |
3581 | variable is set indirectly through the appropriate | 3561 | variable is set indirectly through the appropriate |
@@ -3672,7 +3652,7 @@ system and gives an overview of their function and contents. | |||
3672 | 3652 | ||
3673 | :term:`IMAGE_TYPEDEP` | 3653 | :term:`IMAGE_TYPEDEP` |
3674 | Specifies a dependency from one image type on another. Here is an | 3654 | Specifies a dependency from one image type on another. Here is an |
3675 | example from the :ref:`image-live <ref-classes-image-live>` class:: | 3655 | example from the :ref:`ref-classes-image-live` class:: |
3676 | 3656 | ||
3677 | IMAGE_TYPEDEP:live = "ext3" | 3657 | IMAGE_TYPEDEP:live = "ext3" |
3678 | 3658 | ||
@@ -3739,14 +3719,14 @@ system and gives an overview of their function and contents. | |||
3739 | the build artifacts. | 3719 | the build artifacts. |
3740 | 3720 | ||
3741 | :term:`IMGDEPLOYDIR` | 3721 | :term:`IMGDEPLOYDIR` |
3742 | When inheriting the :ref:`image <ref-classes-image>` class directly or | 3722 | When inheriting the :ref:`ref-classes-image` class directly or |
3743 | through the :ref:`core-image <ref-classes-core-image>` class, the | 3723 | through the :ref:`ref-classes-core-image` class, the |
3744 | :term:`IMGDEPLOYDIR` points to a temporary work area for deployed files | 3724 | :term:`IMGDEPLOYDIR` points to a temporary work area for deployed files |
3745 | that is set in the ``image`` class as follows:: | 3725 | that is set in the ``image`` class as follows:: |
3746 | 3726 | ||
3747 | IMGDEPLOYDIR = "${WORKDIR}/deploy-${PN}-image-complete" | 3727 | IMGDEPLOYDIR = "${WORKDIR}/deploy-${PN}-image-complete" |
3748 | 3728 | ||
3749 | Recipes inheriting the :ref:`image <ref-classes-image>` class should copy | 3729 | Recipes inheriting the :ref:`ref-classes-image` class should copy |
3750 | files to be deployed into :term:`IMGDEPLOYDIR`, and the class will take | 3730 | files to be deployed into :term:`IMGDEPLOYDIR`, and the class will take |
3751 | care of copying them into :term:`DEPLOY_DIR_IMAGE` afterwards. | 3731 | care of copying them into :term:`DEPLOY_DIR_IMAGE` afterwards. |
3752 | 3732 | ||
@@ -3889,10 +3869,9 @@ system and gives an overview of their function and contents. | |||
3889 | :term:`INHIBIT_SYSROOT_STRIP` variable to "1" in your recipe, you inhibit | 3869 | :term:`INHIBIT_SYSROOT_STRIP` variable to "1" in your recipe, you inhibit |
3890 | this stripping. | 3870 | this stripping. |
3891 | 3871 | ||
3892 | If you want to use this variable, include the | 3872 | If you want to use this variable, include the :ref:`ref-classes-staging` |
3893 | :ref:`staging <ref-classes-staging>` class. This class uses a | 3873 | class. This class uses a ``sys_strip()`` function to test for the variable |
3894 | ``sys_strip()`` function to test for the variable and acts | 3874 | and acts accordingly. |
3895 | accordingly. | ||
3896 | 3875 | ||
3897 | .. note:: | 3876 | .. note:: |
3898 | 3877 | ||
@@ -3945,11 +3924,12 @@ system and gives an overview of their function and contents. | |||
3945 | section in the Yocto Project Development Tasks Manual. | 3924 | section in the Yocto Project Development Tasks Manual. |
3946 | 3925 | ||
3947 | :term:`INITRAMFS_DEPLOY_DIR_IMAGE` | 3926 | :term:`INITRAMFS_DEPLOY_DIR_IMAGE` |
3948 | Indicates the deploy directory used by :ref:`ref-tasks-bundle_initramfs` where the | 3927 | Indicates the deploy directory used by :ref:`ref-tasks-bundle_initramfs` |
3949 | :term:`INITRAMFS_IMAGE` will be fetched from. | 3928 | where the :term:`INITRAMFS_IMAGE` will be fetched from. This variable is |
3950 | This variable is set by default to ``${DEPLOY_DIR_IMAGE}`` in the | 3929 | set by default to ``${DEPLOY_DIR_IMAGE}`` in the |
3951 | :ref:`kernel <ref-classes-kernel>` class and it's only meant to be changed | 3930 | :ref:`ref-classes-kernel` class and it's only meant to be changed when |
3952 | when building an :term:`Initramfs` image from a separate multiconfig via :term:`INITRAMFS_MULTICONFIG`. | 3931 | building an :term:`Initramfs` image from a separate multiconfig via |
3932 | :term:`INITRAMFS_MULTICONFIG`. | ||
3953 | 3933 | ||
3954 | :term:`INITRAMFS_FSTYPES` | 3934 | :term:`INITRAMFS_FSTYPES` |
3955 | Defines the format for the output image of an initial RAM filesystem | 3935 | Defines the format for the output image of an initial RAM filesystem |
@@ -3988,9 +3968,9 @@ system and gives an overview of their function and contents. | |||
3988 | 3968 | ||
3989 | You can also find more information by referencing the | 3969 | You can also find more information by referencing the |
3990 | ``meta-poky/conf/templates/default/local.conf.sample.extended`` | 3970 | ``meta-poky/conf/templates/default/local.conf.sample.extended`` |
3991 | configuration file in the Source Directory, the :ref:`image | 3971 | configuration file in the Source Directory, the :ref:`ref-classes-image` |
3992 | <ref-classes-image>` class, and the :ref:`kernel <ref-classes-kernel>` | 3972 | class, and the :ref:`ref-classes-kernel` class to see how to use the |
3993 | class to see how to use the :term:`INITRAMFS_IMAGE` variable. | 3973 | :term:`INITRAMFS_IMAGE` variable. |
3994 | 3974 | ||
3995 | If :term:`INITRAMFS_IMAGE` is empty, which is the default, then no | 3975 | If :term:`INITRAMFS_IMAGE` is empty, which is the default, then no |
3996 | :term:`Initramfs` image is built. | 3976 | :term:`Initramfs` image is built. |
@@ -4037,8 +4017,7 @@ system and gives an overview of their function and contents. | |||
4037 | 4017 | ||
4038 | INITRAMFS_IMAGE_BUNDLE = "1" | 4018 | INITRAMFS_IMAGE_BUNDLE = "1" |
4039 | 4019 | ||
4040 | By default, the | 4020 | By default, the :ref:`ref-classes-kernel` class sets this variable to a |
4041 | :ref:`kernel <ref-classes-kernel>` class sets this variable to a | ||
4042 | null string as follows:: | 4021 | null string as follows:: |
4043 | 4022 | ||
4044 | INITRAMFS_IMAGE_BUNDLE ?= "" | 4023 | INITRAMFS_IMAGE_BUNDLE ?= "" |
@@ -4071,7 +4050,8 @@ system and gives an overview of their function and contents. | |||
4071 | information. | 4050 | information. |
4072 | 4051 | ||
4073 | :term:`INITRAMFS_MULTICONFIG` | 4052 | :term:`INITRAMFS_MULTICONFIG` |
4074 | Defines the multiconfig to create a multiconfig dependency to be used by the :ref:`kernel <ref-classes-kernel>` class. | 4053 | Defines the multiconfig to create a multiconfig dependency to be used by |
4054 | the :ref:`ref-classes-kernel` class. | ||
4075 | 4055 | ||
4076 | This allows the kernel to bundle an :term:`INITRAMFS_IMAGE` coming from | 4056 | This allows the kernel to bundle an :term:`INITRAMFS_IMAGE` coming from |
4077 | a separate multiconfig, this is meant to be used in addition to :term:`INITRAMFS_DEPLOY_DIR_IMAGE`. | 4057 | a separate multiconfig, this is meant to be used in addition to :term:`INITRAMFS_DEPLOY_DIR_IMAGE`. |
@@ -4097,7 +4077,7 @@ system and gives an overview of their function and contents. | |||
4097 | initial RAM disk (``initrd``). | 4077 | initial RAM disk (``initrd``). |
4098 | 4078 | ||
4099 | The :term:`INITRD` variable is an optional variable used with the | 4079 | The :term:`INITRD` variable is an optional variable used with the |
4100 | :ref:`image-live <ref-classes-image-live>` class. | 4080 | :ref:`ref-classes-image-live` class. |
4101 | 4081 | ||
4102 | :term:`INITRD_IMAGE` | 4082 | :term:`INITRD_IMAGE` |
4103 | When building a "live" bootable image (i.e. when | 4083 | When building a "live" bootable image (i.e. when |
@@ -4106,8 +4086,7 @@ system and gives an overview of their function and contents. | |||
4106 | provide the initial RAM disk image. The default value is | 4086 | provide the initial RAM disk image. The default value is |
4107 | "core-image-minimal-initramfs". | 4087 | "core-image-minimal-initramfs". |
4108 | 4088 | ||
4109 | See the :ref:`image-live <ref-classes-image-live>` class for more | 4089 | See the :ref:`ref-classes-image-live` class for more information. |
4110 | information. | ||
4111 | 4090 | ||
4112 | :term:`INITSCRIPT_NAME` | 4091 | :term:`INITSCRIPT_NAME` |
4113 | The filename of the initialization script as installed to | 4092 | The filename of the initialization script as installed to |
@@ -4134,7 +4113,7 @@ system and gives an overview of their function and contents. | |||
4134 | in initlevels 2 and 5, and stops the script in levels 0, 1 and 6. | 4113 | in initlevels 2 and 5, and stops the script in levels 0, 1 and 6. |
4135 | 4114 | ||
4136 | The variable's default value is "defaults", which is set in the | 4115 | The variable's default value is "defaults", which is set in the |
4137 | :ref:`update-rc.d <ref-classes-update-rc.d>` class. | 4116 | :ref:`ref-classes-update-rc.d` class. |
4138 | 4117 | ||
4139 | The value in :term:`INITSCRIPT_PARAMS` is passed through to the | 4118 | The value in :term:`INITSCRIPT_PARAMS` is passed through to the |
4140 | ``update-rc.d`` command. For more information on valid parameters, | 4119 | ``update-rc.d`` command. For more information on valid parameters, |
@@ -4212,7 +4191,7 @@ system and gives an overview of their function and contents. | |||
4212 | BSP. | 4191 | BSP. |
4213 | 4192 | ||
4214 | :term:`KBUILD_DEFCONFIG` | 4193 | :term:`KBUILD_DEFCONFIG` |
4215 | When used with the :ref:`kernel-yocto <ref-classes-kernel-yocto>` | 4194 | When used with the :ref:`ref-classes-kernel-yocto` |
4216 | class, specifies an "in-tree" kernel configuration file for use | 4195 | class, specifies an "in-tree" kernel configuration file for use |
4217 | during a kernel build. | 4196 | during a kernel build. |
4218 | 4197 | ||
@@ -4245,7 +4224,7 @@ system and gives an overview of their function and contents. | |||
4245 | section in the Yocto Project Linux Kernel Development Manual. | 4224 | section in the Yocto Project Linux Kernel Development Manual. |
4246 | 4225 | ||
4247 | :term:`KCONFIG_MODE` | 4226 | :term:`KCONFIG_MODE` |
4248 | When used with the :ref:`kernel-yocto <ref-classes-kernel-yocto>` | 4227 | When used with the :ref:`ref-classes-kernel-yocto` |
4249 | class, specifies the kernel configuration values to use for options | 4228 | class, specifies the kernel configuration values to use for options |
4250 | not specified in the provided ``defconfig`` file. Valid options are:: | 4229 | not specified in the provided ``defconfig`` file. Valid options are:: |
4251 | 4230 | ||
@@ -4302,12 +4281,12 @@ system and gives an overview of their function and contents. | |||
4302 | 4281 | ||
4303 | :term:`KERNEL_CLASSES` | 4282 | :term:`KERNEL_CLASSES` |
4304 | A list of classes defining kernel image types that the | 4283 | A list of classes defining kernel image types that the |
4305 | :ref:`kernel <ref-classes-kernel>` class should inherit. You typically | 4284 | :ref:`ref-classes-kernel` class should inherit. You typically |
4306 | append this variable to enable extended image types. An example is | 4285 | append this variable to enable extended image types. An example is |
4307 | ":ref:`kernel-fitimage <ref-classes-kernel-fitimage>`", which enables | 4286 | ":ref:`ref-classes-kernel-fitimage`", which enables |
4308 | fitImage support and resides in ``meta/classes-recipe/kernel-fitimage.bbclass``. | 4287 | fitImage support and resides in ``meta/classes-recipe/kernel-fitimage.bbclass``. |
4309 | You can register custom kernel image types with the | 4288 | You can register custom kernel image types with the |
4310 | :ref:`kernel <ref-classes-kernel>` class using this variable. | 4289 | :ref:`ref-classes-kernel` class using this variable. |
4311 | 4290 | ||
4312 | :term:`KERNEL_DEBUG_TIMESTAMPS` | 4291 | :term:`KERNEL_DEBUG_TIMESTAMPS` |
4313 | If set to "1", enables timestamping functionality during building | 4292 | If set to "1", enables timestamping functionality during building |
@@ -4329,9 +4308,8 @@ system and gives an overview of their function and contents. | |||
4329 | There is legacy support for specifying the full path to the device | 4308 | There is legacy support for specifying the full path to the device |
4330 | tree. However, providing just the ``.dtb`` file is preferred. | 4309 | tree. However, providing just the ``.dtb`` file is preferred. |
4331 | 4310 | ||
4332 | In order to use this variable, the | 4311 | In order to use this variable, the :ref:`ref-classes-kernel-devicetree` |
4333 | :ref:`kernel-devicetree <ref-classes-kernel-devicetree>` class must | 4312 | class must be inherited. |
4334 | be inherited. | ||
4335 | 4313 | ||
4336 | :term:`KERNEL_DTB_LINK_NAME` | 4314 | :term:`KERNEL_DTB_LINK_NAME` |
4337 | The link name of the kernel device tree binary (DTB). This variable | 4315 | The link name of the kernel device tree binary (DTB). This variable |
@@ -4366,9 +4344,8 @@ system and gives an overview of their function and contents. | |||
4366 | system when generating the device trees (via ``DTC_FLAGS`` environment | 4344 | system when generating the device trees (via ``DTC_FLAGS`` environment |
4367 | variable). | 4345 | variable). |
4368 | 4346 | ||
4369 | In order to use this variable, the | 4347 | In order to use this variable, the :ref:`ref-classes-kernel-devicetree` |
4370 | :ref:`kernel-devicetree <ref-classes-kernel-devicetree>` class must | 4348 | class must be inherited. |
4371 | be inherited. | ||
4372 | 4349 | ||
4373 | :term:`KERNEL_EXTRA_ARGS` | 4350 | :term:`KERNEL_EXTRA_ARGS` |
4374 | Specifies additional ``make`` command-line arguments the OpenEmbedded | 4351 | Specifies additional ``make`` command-line arguments the OpenEmbedded |
@@ -4519,9 +4496,8 @@ system and gives an overview of their function and contents. | |||
4519 | 4496 | ||
4520 | :term:`KERNEL_PATH` | 4497 | :term:`KERNEL_PATH` |
4521 | The location of the kernel sources. This variable is set to the value | 4498 | The location of the kernel sources. This variable is set to the value |
4522 | of the :term:`STAGING_KERNEL_DIR` within | 4499 | of the :term:`STAGING_KERNEL_DIR` within the :ref:`ref-classes-module` |
4523 | the :ref:`module <ref-classes-module>` class. For information on | 4500 | class. For information on how this variable is used, see the |
4524 | how this variable is used, see the | ||
4525 | ":ref:`kernel-dev/common:incorporating out-of-tree modules`" | 4501 | ":ref:`kernel-dev/common:incorporating out-of-tree modules`" |
4526 | section in the Yocto Project Linux Kernel Development Manual. | 4502 | section in the Yocto Project Linux Kernel Development Manual. |
4527 | 4503 | ||
@@ -4533,9 +4509,8 @@ system and gives an overview of their function and contents. | |||
4533 | 4509 | ||
4534 | :term:`KERNEL_SRC` | 4510 | :term:`KERNEL_SRC` |
4535 | The location of the kernel sources. This variable is set to the value | 4511 | The location of the kernel sources. This variable is set to the value |
4536 | of the :term:`STAGING_KERNEL_DIR` within | 4512 | of the :term:`STAGING_KERNEL_DIR` within the :ref:`ref-classes-module` |
4537 | the :ref:`module <ref-classes-module>` class. For information on | 4513 | class. For information on how this variable is used, see the |
4538 | how this variable is used, see the | ||
4539 | ":ref:`kernel-dev/common:incorporating out-of-tree modules`" | 4514 | ":ref:`kernel-dev/common:incorporating out-of-tree modules`" |
4540 | section in the Yocto Project Linux Kernel Development Manual. | 4515 | section in the Yocto Project Linux Kernel Development Manual. |
4541 | 4516 | ||
@@ -4613,7 +4588,7 @@ system and gives an overview of their function and contents. | |||
4613 | :term:`LABELS` | 4588 | :term:`LABELS` |
4614 | Provides a list of targets for automatic configuration. | 4589 | Provides a list of targets for automatic configuration. |
4615 | 4590 | ||
4616 | See the :ref:`grub-efi <ref-classes-grub-efi>` class for more | 4591 | See the :ref:`ref-classes-grub-efi` class for more |
4617 | information on how this variable is used. | 4592 | information on how this variable is used. |
4618 | 4593 | ||
4619 | :term:`LAYERDEPENDS` | 4594 | :term:`LAYERDEPENDS` |
@@ -4715,10 +4690,11 @@ system and gives an overview of their function and contents. | |||
4715 | 4690 | ||
4716 | :term:`LEAD_SONAME` | 4691 | :term:`LEAD_SONAME` |
4717 | Specifies the lead (or primary) compiled library file (i.e. ``.so``) | 4692 | Specifies the lead (or primary) compiled library file (i.e. ``.so``) |
4718 | that the :ref:`debian <ref-classes-debian>` class applies its | 4693 | that the :ref:`ref-classes-debian` class applies its |
4719 | naming policy to given a recipe that packages multiple libraries. | 4694 | naming policy to given a recipe that packages multiple libraries. |
4720 | 4695 | ||
4721 | This variable works in conjunction with the :ref:`debian <ref-classes-debian>` class. | 4696 | This variable works in conjunction with the :ref:`ref-classes-debian` |
4697 | class. | ||
4722 | 4698 | ||
4723 | :term:`LIC_FILES_CHKSUM` | 4699 | :term:`LIC_FILES_CHKSUM` |
4724 | Checksums of the license text in the recipe source code. | 4700 | Checksums of the license text in the recipe source code. |
@@ -5103,7 +5079,7 @@ system and gives an overview of their function and contents. | |||
5103 | determined by :term:`COREBASE`). | 5079 | determined by :term:`COREBASE`). |
5104 | 5080 | ||
5105 | :term:`MIME_XDG_PACKAGES` | 5081 | :term:`MIME_XDG_PACKAGES` |
5106 | The current implementation of the :ref:`mime-xdg <ref-classes-mime-xdg>` | 5082 | The current implementation of the :ref:`ref-classes-mime-xdg` |
5107 | class cannot detect ``.desktop`` files installed through absolute | 5083 | class cannot detect ``.desktop`` files installed through absolute |
5108 | symbolic links. Use this setting to make the class create post-install | 5084 | symbolic links. Use this setting to make the class create post-install |
5109 | and post-remove scripts for these packages anyway, to invoke the | 5085 | and post-remove scripts for these packages anyway, to invoke the |
@@ -5131,20 +5107,18 @@ system and gives an overview of their function and contents. | |||
5131 | .. note:: | 5107 | .. note:: |
5132 | 5108 | ||
5133 | The "ML" in :term:`MLPREFIX` stands for "MultiLib". This representation | 5109 | The "ML" in :term:`MLPREFIX` stands for "MultiLib". This representation |
5134 | is historical and comes from a time when | 5110 | is historical and comes from a time when ":ref:`ref-classes-nativesdk`" |
5135 | ":ref:`nativesdk <ref-classes-nativesdk>`" | ||
5136 | was a suffix rather than a prefix on the recipe name. When | 5111 | was a suffix rather than a prefix on the recipe name. When |
5137 | ":ref:`nativesdk <ref-classes-nativesdk>`" was turned | 5112 | ":ref:`ref-classes-nativesdk`" was turned into a prefix, it made sense |
5138 | into a prefix, it made sense to set :term:`MLPREFIX` for it as well. | 5113 | to set :term:`MLPREFIX` for it as well. |
5139 | 5114 | ||
5140 | To help understand when :term:`MLPREFIX` might be needed, consider when | 5115 | To help understand when :term:`MLPREFIX` might be needed, consider when |
5141 | :term:`BBCLASSEXTEND` is used to provide a | 5116 | :term:`BBCLASSEXTEND` is used to provide a :ref:`ref-classes-nativesdk` |
5142 | :ref:`nativesdk <ref-classes-nativesdk>` version of a recipe in addition | 5117 | version of a recipe in addition to the target version. If that recipe |
5143 | to the target version. If that recipe declares build-time dependencies | 5118 | declares build-time dependencies on tasks in other recipes by using |
5144 | on tasks in other recipes by using :term:`DEPENDS`, then a dependency on | 5119 | :term:`DEPENDS`, then a dependency on "foo" will automatically get |
5145 | "foo" will automatically get rewritten to a dependency on | 5120 | rewritten to a dependency on "nativesdk-foo". However, dependencies like |
5146 | "nativesdk-foo". However, dependencies like the following will not | 5121 | the following will not get rewritten automatically:: |
5147 | get rewritten automatically:: | ||
5148 | 5122 | ||
5149 | do_foo[depends] += "recipe:do_foo" | 5123 | do_foo[depends] += "recipe:do_foo" |
5150 | 5124 | ||
@@ -5243,8 +5217,7 @@ system and gives an overview of their function and contents. | |||
5243 | 5217 | ||
5244 | ${PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS} | 5218 | ${PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS} |
5245 | 5219 | ||
5246 | Some classes (e.g. | 5220 | Some classes (e.g. :ref:`ref-classes-cross-canadian`) modify the |
5247 | :ref:`cross-canadian <ref-classes-cross-canadian>`) modify the | ||
5248 | :term:`MULTIMACH_TARGET_SYS` value. | 5221 | :term:`MULTIMACH_TARGET_SYS` value. |
5249 | 5222 | ||
5250 | See the :term:`STAMP` variable for an example. See the | 5223 | See the :term:`STAMP` variable for an example. See the |
@@ -5346,7 +5319,7 @@ system and gives an overview of their function and contents. | |||
5346 | The minimal command and arguments to run ``objdump``. | 5319 | The minimal command and arguments to run ``objdump``. |
5347 | 5320 | ||
5348 | :term:`OE_BINCONFIG_EXTRA_MANGLE` | 5321 | :term:`OE_BINCONFIG_EXTRA_MANGLE` |
5349 | When inheriting the :ref:`binconfig <ref-classes-binconfig>` class, | 5322 | When inheriting the :ref:`ref-classes-binconfig` class, |
5350 | this variable specifies additional arguments passed to the "sed" | 5323 | this variable specifies additional arguments passed to the "sed" |
5351 | command. The sed command alters any paths in configuration scripts | 5324 | command. The sed command alters any paths in configuration scripts |
5352 | that have been set up during compilation. Inheriting this class | 5325 | that have been set up during compilation. Inheriting this class |
@@ -5412,68 +5385,67 @@ system and gives an overview of their function and contents. | |||
5412 | configuration file. | 5385 | configuration file. |
5413 | 5386 | ||
5414 | :term:`OVERLAYFS_ETC_DEVICE` | 5387 | :term:`OVERLAYFS_ETC_DEVICE` |
5415 | When the :ref:`overlayfs-etc <ref-classes-overlayfs-etc>` class is | 5388 | When the :ref:`ref-classes-overlayfs-etc` class is |
5416 | inherited, specifies the device to be mounted for the read/write | 5389 | inherited, specifies the device to be mounted for the read/write |
5417 | layer of ``/etc``. There is no default, so you must set this if you | 5390 | layer of ``/etc``. There is no default, so you must set this if you |
5418 | wish to enable :ref:`overlayfs-etc <ref-classes-overlayfs-etc>`, for | 5391 | wish to enable :ref:`ref-classes-overlayfs-etc`, for |
5419 | example, assuming ``/dev/mmcblk0p2`` was the desired device:: | 5392 | example, assuming ``/dev/mmcblk0p2`` was the desired device:: |
5420 | 5393 | ||
5421 | OVERLAYFS_ETC_DEVICE = "/dev/mmcblk0p2" | 5394 | OVERLAYFS_ETC_DEVICE = "/dev/mmcblk0p2" |
5422 | 5395 | ||
5423 | :term:`OVERLAYFS_ETC_EXPOSE_LOWER` | 5396 | :term:`OVERLAYFS_ETC_EXPOSE_LOWER` |
5424 | When the :ref:`overlayfs-etc <ref-classes-overlayfs-etc>` class is | 5397 | When the :ref:`ref-classes-overlayfs-etc` class is |
5425 | inherited, if set to "1" then a read-only access to the original | 5398 | inherited, if set to "1" then a read-only access to the original |
5426 | ``/etc`` content will be provided as a ``lower/`` subdirectory of | 5399 | ``/etc`` content will be provided as a ``lower/`` subdirectory of |
5427 | :term:`OVERLAYFS_ETC_MOUNT_POINT`. The default value is "0". | 5400 | :term:`OVERLAYFS_ETC_MOUNT_POINT`. The default value is "0". |
5428 | 5401 | ||
5429 | :term:`OVERLAYFS_ETC_FSTYPE` | 5402 | :term:`OVERLAYFS_ETC_FSTYPE` |
5430 | When the :ref:`overlayfs-etc <ref-classes-overlayfs-etc>` class is | 5403 | When the :ref:`ref-classes-overlayfs-etc` class is |
5431 | inherited, specifies the file system type for the read/write | 5404 | inherited, specifies the file system type for the read/write |
5432 | layer of ``/etc``. There is no default, so you must set this if you | 5405 | layer of ``/etc``. There is no default, so you must set this if you |
5433 | wish to enable :ref:`overlayfs-etc <ref-classes-overlayfs-etc>`, | 5406 | wish to enable :ref:`ref-classes-overlayfs-etc`, |
5434 | for example, assuming the file system is ext4:: | 5407 | for example, assuming the file system is ext4:: |
5435 | 5408 | ||
5436 | OVERLAYFS_ETC_FSTYPE = "ext4" | 5409 | OVERLAYFS_ETC_FSTYPE = "ext4" |
5437 | 5410 | ||
5438 | :term:`OVERLAYFS_ETC_MOUNT_OPTIONS` | 5411 | :term:`OVERLAYFS_ETC_MOUNT_OPTIONS` |
5439 | When the :ref:`overlayfs-etc <ref-classes-overlayfs-etc>` class is | 5412 | When the :ref:`ref-classes-overlayfs-etc` class is |
5440 | inherited, specifies the mount options for the read-write layer. | 5413 | inherited, specifies the mount options for the read-write layer. |
5441 | The default value is "defaults". | 5414 | The default value is "defaults". |
5442 | 5415 | ||
5443 | :term:`OVERLAYFS_ETC_MOUNT_POINT` | 5416 | :term:`OVERLAYFS_ETC_MOUNT_POINT` |
5444 | When the :ref:`overlayfs-etc <ref-classes-overlayfs-etc>` class is | 5417 | When the :ref:`ref-classes-overlayfs-etc` class is |
5445 | inherited, specifies the parent mount path for the filesystem layers. | 5418 | inherited, specifies the parent mount path for the filesystem layers. |
5446 | There is no default, so you must set this if you wish to enable | 5419 | There is no default, so you must set this if you wish to enable |
5447 | :ref:`overlayfs-etc <ref-classes-overlayfs-etc>`, for example if | 5420 | :ref:`ref-classes-overlayfs-etc`, for example if the desired path is |
5448 | the desired path is "/data":: | 5421 | "/data":: |
5449 | 5422 | ||
5450 | OVERLAYFS_ETC_MOUNT_POINT = "/data" | 5423 | OVERLAYFS_ETC_MOUNT_POINT = "/data" |
5451 | 5424 | ||
5452 | :term:`OVERLAYFS_ETC_USE_ORIG_INIT_NAME` | 5425 | :term:`OVERLAYFS_ETC_USE_ORIG_INIT_NAME` |
5453 | When the :ref:`overlayfs-etc <ref-classes-overlayfs-etc>` class is | 5426 | When the :ref:`ref-classes-overlayfs-etc` class is inherited, controls |
5454 | inherited, controls how the generated init will be named. For more | 5427 | how the generated init will be named. For more information, see the |
5455 | information, see the :ref:`overlayfs-etc <ref-classes-overlayfs-etc>` | 5428 | :ref:`ref-classes-overlayfs-etc` class documentation. The default value |
5456 | class documentation. The default value is "1". | 5429 | is "1". |
5457 | 5430 | ||
5458 | :term:`OVERLAYFS_MOUNT_POINT` | 5431 | :term:`OVERLAYFS_MOUNT_POINT` |
5459 | When inheriting the :ref:`overlayfs <ref-classes-overlayfs>` class, | 5432 | When inheriting the :ref:`ref-classes-overlayfs` class, |
5460 | specifies mount point(s) to be used. For example:: | 5433 | specifies mount point(s) to be used. For example:: |
5461 | 5434 | ||
5462 | OVERLAYFS_MOUNT_POINT[data] = "/data" | 5435 | OVERLAYFS_MOUNT_POINT[data] = "/data" |
5463 | 5436 | ||
5464 | The assumes you have a ``data.mount`` systemd unit defined elsewhere | 5437 | The assumes you have a ``data.mount`` systemd unit defined elsewhere in |
5465 | in your BSP (e.g. in ``systemd-machine-units`` recipe) and it is | 5438 | your BSP (e.g. in ``systemd-machine-units`` recipe) and it is installed |
5466 | installed into the image. For more information see | 5439 | into the image. For more information see :ref:`ref-classes-overlayfs`. |
5467 | :ref:`overlayfs <ref-classes-overlayfs>`. | ||
5468 | 5440 | ||
5469 | .. note:: | 5441 | .. note:: |
5470 | 5442 | ||
5471 | Although the :ref:`overlayfs <ref-classes-overlayfs>` class is | 5443 | Although the :ref:`ref-classes-overlayfs` class is |
5472 | inherited by individual recipes, :term:`OVERLAYFS_MOUNT_POINT` | 5444 | inherited by individual recipes, :term:`OVERLAYFS_MOUNT_POINT` |
5473 | should be set in your machine configuration. | 5445 | should be set in your machine configuration. |
5474 | 5446 | ||
5475 | :term:`OVERLAYFS_QA_SKIP` | 5447 | :term:`OVERLAYFS_QA_SKIP` |
5476 | When inheriting the :ref:`overlayfs <ref-classes-overlayfs>` class, | 5448 | When inheriting the :ref:`ref-classes-overlayfs` class, |
5477 | provides the ability to disable QA checks for particular overlayfs | 5449 | provides the ability to disable QA checks for particular overlayfs |
5478 | mounts. For example:: | 5450 | mounts. For example:: |
5479 | 5451 | ||
@@ -5481,12 +5453,12 @@ system and gives an overview of their function and contents. | |||
5481 | 5453 | ||
5482 | .. note:: | 5454 | .. note:: |
5483 | 5455 | ||
5484 | Although the :ref:`overlayfs <ref-classes-overlayfs>` class is | 5456 | Although the :ref:`ref-classes-overlayfs` class is |
5485 | inherited by individual recipes, :term:`OVERLAYFS_QA_SKIP` | 5457 | inherited by individual recipes, :term:`OVERLAYFS_QA_SKIP` |
5486 | should be set in your machine configuration. | 5458 | should be set in your machine configuration. |
5487 | 5459 | ||
5488 | :term:`OVERLAYFS_WRITABLE_PATHS` | 5460 | :term:`OVERLAYFS_WRITABLE_PATHS` |
5489 | When inheriting the :ref:`overlayfs <ref-classes-overlayfs>` class, | 5461 | When inheriting the :ref:`ref-classes-overlayfs` class, |
5490 | specifies writable paths used at runtime for the recipe. For | 5462 | specifies writable paths used at runtime for the recipe. For |
5491 | example:: | 5463 | example:: |
5492 | 5464 | ||
@@ -5598,7 +5570,7 @@ system and gives an overview of their function and contents. | |||
5598 | 5570 | ||
5599 | .. note:: | 5571 | .. note:: |
5600 | 5572 | ||
5601 | While it is a legal option, the :ref:`package_tar <ref-classes-package_tar>` | 5573 | While it is a legal option, the :ref:`ref-classes-package_tar` |
5602 | class has limited functionality due to no support for package | 5574 | class has limited functionality due to no support for package |
5603 | dependencies by that backend. Therefore, it is recommended that | 5575 | dependencies by that backend. Therefore, it is recommended that |
5604 | you do not use it. | 5576 | you do not use it. |
@@ -5936,16 +5908,15 @@ system and gives an overview of their function and contents. | |||
5936 | A space-separated list of configuration options generated from the | 5908 | A space-separated list of configuration options generated from the |
5937 | :term:`PACKAGECONFIG` setting. | 5909 | :term:`PACKAGECONFIG` setting. |
5938 | 5910 | ||
5939 | Classes such as :ref:`autotools <ref-classes-autotools>` and | 5911 | Classes such as :ref:`ref-classes-autotools` and :ref:`ref-classes-cmake` |
5940 | :ref:`cmake <ref-classes-cmake>` use :term:`PACKAGECONFIG_CONFARGS` to | 5912 | use :term:`PACKAGECONFIG_CONFARGS` to pass :term:`PACKAGECONFIG` options |
5941 | pass :term:`PACKAGECONFIG` options to ``configure`` and ``cmake``, | 5913 | to ``configure`` and ``cmake``, respectively. If you are using |
5942 | respectively. If you are using :term:`PACKAGECONFIG` but not a class that | 5914 | :term:`PACKAGECONFIG` but not a class that handles the |
5943 | handles the :ref:`ref-tasks-configure` task, then you need to use | 5915 | :ref:`ref-tasks-configure` task, then you need to use |
5944 | :term:`PACKAGECONFIG_CONFARGS` appropriately. | 5916 | :term:`PACKAGECONFIG_CONFARGS` appropriately. |
5945 | 5917 | ||
5946 | :term:`PACKAGEGROUP_DISABLE_COMPLEMENTARY` | 5918 | :term:`PACKAGEGROUP_DISABLE_COMPLEMENTARY` |
5947 | For recipes inheriting the | 5919 | For recipes inheriting the :ref:`ref-classes-packagegroup` class, setting |
5948 | :ref:`packagegroup <ref-classes-packagegroup>` class, setting | ||
5949 | :term:`PACKAGEGROUP_DISABLE_COMPLEMENTARY` to "1" specifies that the | 5920 | :term:`PACKAGEGROUP_DISABLE_COMPLEMENTARY` to "1" specifies that the |
5950 | normal complementary packages (i.e. ``-dev``, ``-dbg``, and so forth) | 5921 | normal complementary packages (i.e. ``-dev``, ``-dbg``, and so forth) |
5951 | should not be automatically created by the ``packagegroup`` recipe, | 5922 | should not be automatically created by the ``packagegroup`` recipe, |
@@ -6097,9 +6068,8 @@ system and gives an overview of their function and contents. | |||
6097 | :term:`PE` is the default value of the :term:`PKGE` variable. | 6068 | :term:`PE` is the default value of the :term:`PKGE` variable. |
6098 | 6069 | ||
6099 | :term:`PEP517_WHEEL_PATH` | 6070 | :term:`PEP517_WHEEL_PATH` |
6100 | When used by recipes that inherit the | 6071 | When used by recipes that inherit the :ref:`ref-classes-python_pep517` |
6101 | :ref:`python_pep517 <ref-classes-python_pep517>` class, | 6072 | class, denotes the path to ``dist/`` (short for distribution) where the |
6102 | denotes the path to ``dist/`` (short for distribution) where the | ||
6103 | binary archive ``wheel`` is built. | 6073 | binary archive ``wheel`` is built. |
6104 | 6074 | ||
6105 | :term:`PERSISTENT_DIR` | 6075 | :term:`PERSISTENT_DIR` |
@@ -6112,10 +6082,10 @@ system and gives an overview of their function and contents. | |||
6112 | ${:term:`PN`}-${:term:`EXTENDPE`}${:term:`PV`}-${:term:`PR`} | 6082 | ${:term:`PN`}-${:term:`EXTENDPE`}${:term:`PV`}-${:term:`PR`} |
6113 | 6083 | ||
6114 | :term:`PIXBUF_PACKAGES` | 6084 | :term:`PIXBUF_PACKAGES` |
6115 | When inheriting the :ref:`pixbufcache <ref-classes-pixbufcache>` | 6085 | When inheriting the :ref:`ref-classes-pixbufcache` |
6116 | class, this variable identifies packages that contain the pixbuf | 6086 | class, this variable identifies packages that contain the pixbuf |
6117 | loaders used with ``gdk-pixbuf``. By default, the | 6087 | loaders used with ``gdk-pixbuf``. By default, the |
6118 | :ref:`pixbufcache <ref-classes-pixbufcache>` class assumes that | 6088 | :ref:`ref-classes-pixbufcache` class assumes that |
6119 | the loaders are in the recipe's main package (i.e. | 6089 | the loaders are in the recipe's main package (i.e. |
6120 | ``${``\ :term:`PN`\ ``}``). Use this variable if the | 6090 | ``${``\ :term:`PN`\ ``}``). Use this variable if the |
6121 | loaders you need are in a package other than that main package. | 6091 | loaders you need are in a package other than that main package. |
@@ -6128,9 +6098,8 @@ system and gives an overview of their function and contents. | |||
6128 | 6098 | ||
6129 | When using the :term:`PKG` variable, you must use a package name override. | 6099 | When using the :term:`PKG` variable, you must use a package name override. |
6130 | 6100 | ||
6131 | For example, when the :ref:`debian <ref-classes-debian>` class | 6101 | For example, when the :ref:`ref-classes-debian` class renames the output |
6132 | renames the output package, it does so by setting | 6102 | package, it does so by setting ``PKG:packagename``. |
6133 | ``PKG:packagename``. | ||
6134 | 6103 | ||
6135 | :term:`PKG_CONFIG_PATH` | 6104 | :term:`PKG_CONFIG_PATH` |
6136 | The path to ``pkg-config`` files for the current build context. | 6105 | The path to ``pkg-config`` files for the current build context. |
@@ -6531,7 +6500,7 @@ system and gives an overview of their function and contents. | |||
6531 | :term:`PV` is the default value of the :term:`PKGV` variable. | 6500 | :term:`PV` is the default value of the :term:`PKGV` variable. |
6532 | 6501 | ||
6533 | :term:`PYPI_PACKAGE` | 6502 | :term:`PYPI_PACKAGE` |
6534 | When inheriting the :ref:`pypi <ref-classes-pypi>` class, specifies the | 6503 | When inheriting the :ref:`ref-classes-pypi` class, specifies the |
6535 | `PyPI <https://pypi.org/>`__ package name to be built. The default value | 6504 | `PyPI <https://pypi.org/>`__ package name to be built. The default value |
6536 | is set based upon :term:`BPN` (stripping any "python-" or "python3-" | 6505 | is set based upon :term:`BPN` (stripping any "python-" or "python3-" |
6537 | prefix off if present), however for some packages it will need to be set | 6506 | prefix off if present), however for some packages it will need to be set |
@@ -6539,22 +6508,20 @@ system and gives an overview of their function and contents. | |||
6539 | package name has a prefix, underscores, uppercase letters etc.) | 6508 | package name has a prefix, underscores, uppercase letters etc.) |
6540 | 6509 | ||
6541 | :term:`PYTHON_ABI` | 6510 | :term:`PYTHON_ABI` |
6542 | When used by recipes that inherit the | 6511 | When used by recipes that inherit the :ref:`ref-classes-setuptools3` |
6543 | :ref:`setuptools3 <ref-classes-setuptools3>` class, denotes the | 6512 | class, denotes the Application Binary Interface (ABI) currently in use |
6544 | Application Binary Interface (ABI) currently in use for Python. By | 6513 | for Python. By default, the ABI is "m". You do not have to set this |
6545 | default, the ABI is "m". You do not have to set this variable as the | 6514 | variable as the OpenEmbedded build system sets it for you. |
6546 | OpenEmbedded build system sets it for you. | ||
6547 | 6515 | ||
6548 | The OpenEmbedded build system uses the ABI to construct directory | 6516 | The OpenEmbedded build system uses the ABI to construct directory |
6549 | names used when installing the Python headers and libraries in | 6517 | names used when installing the Python headers and libraries in |
6550 | sysroot (e.g. ``.../python3.3m/...``). | 6518 | sysroot (e.g. ``.../python3.3m/...``). |
6551 | 6519 | ||
6552 | :term:`PYTHON_PN` | 6520 | :term:`PYTHON_PN` |
6553 | When used by recipes that inherit the | 6521 | When used by recipes that inherit the :ref:`ref-classes-setuptools3` |
6554 | :ref:`setuptools3 <ref-classes-setuptools3>` class, specifies the | 6522 | class, specifies the major Python version being built. For Python 3.x, |
6555 | major Python version being built. For Python 3.x, :term:`PYTHON_PN` would | 6523 | :term:`PYTHON_PN` would be "python3". You do not have to set this |
6556 | be "python3". You do not have to set this variable as the | 6524 | variable as the OpenEmbedded build system automatically sets it for you. |
6557 | OpenEmbedded build system automatically sets it for you. | ||
6558 | 6525 | ||
6559 | The variable allows recipes to use common infrastructure such as the | 6526 | The variable allows recipes to use common infrastructure such as the |
6560 | following:: | 6527 | following:: |
@@ -6685,7 +6652,7 @@ system and gives an overview of their function and contents. | |||
6685 | The package names you use with :term:`RDEPENDS` must appear as they would | 6652 | The package names you use with :term:`RDEPENDS` must appear as they would |
6686 | in the :term:`PACKAGES` variable. The :term:`PKG` variable | 6653 | in the :term:`PACKAGES` variable. The :term:`PKG` variable |
6687 | allows a different name to be used for the final package (e.g. the | 6654 | allows a different name to be used for the final package (e.g. the |
6688 | :ref:`debian <ref-classes-debian>` class uses this to rename | 6655 | :ref:`ref-classes-debian` class uses this to rename |
6689 | packages), but this final package name cannot be used with | 6656 | packages), but this final package name cannot be used with |
6690 | :term:`RDEPENDS`, which makes sense as :term:`RDEPENDS` is meant to be | 6657 | :term:`RDEPENDS`, which makes sense as :term:`RDEPENDS` is meant to be |
6691 | independent of the package format used. | 6658 | independent of the package format used. |
@@ -6736,7 +6703,7 @@ system and gives an overview of their function and contents. | |||
6736 | See :term:`bitbake:REPODIR` in the BitBake manual. | 6703 | See :term:`bitbake:REPODIR` in the BitBake manual. |
6737 | 6704 | ||
6738 | :term:`REQUIRED_DISTRO_FEATURES` | 6705 | :term:`REQUIRED_DISTRO_FEATURES` |
6739 | When inheriting the :ref:`features_check <ref-classes-features_check>` | 6706 | When inheriting the :ref:`ref-classes-features_check` |
6740 | class, this variable identifies distribution features that must exist | 6707 | class, this variable identifies distribution features that must exist |
6741 | in the current configuration in order for the OpenEmbedded build | 6708 | in the current configuration in order for the OpenEmbedded build |
6742 | system to build the recipe. In other words, if the | 6709 | system to build the recipe. In other words, if the |
@@ -6757,7 +6724,7 @@ system and gives an overview of their function and contents. | |||
6757 | for the same recipe, the :term:`REQUIRED_VERSION` value applies. | 6724 | for the same recipe, the :term:`REQUIRED_VERSION` value applies. |
6758 | 6725 | ||
6759 | :term:`RM_WORK_EXCLUDE` | 6726 | :term:`RM_WORK_EXCLUDE` |
6760 | With :ref:`rm_work <ref-classes-rm-work>` enabled, this variable | 6727 | With :ref:`ref-classes-rm-work` enabled, this variable |
6761 | specifies a list of recipes whose work directories should not be removed. | 6728 | specifies a list of recipes whose work directories should not be removed. |
6762 | See the ":ref:`ref-classes-rm-work`" section for more details. | 6729 | See the ":ref:`ref-classes-rm-work`" section for more details. |
6763 | 6730 | ||
@@ -6789,7 +6756,7 @@ system and gives an overview of their function and contents. | |||
6789 | Indicates a filesystem image to include as the root filesystem. | 6756 | Indicates a filesystem image to include as the root filesystem. |
6790 | 6757 | ||
6791 | The :term:`ROOTFS` variable is an optional variable used with the | 6758 | The :term:`ROOTFS` variable is an optional variable used with the |
6792 | :ref:`image-live <ref-classes-image-live>` class. | 6759 | :ref:`ref-classes-image-live` class. |
6793 | 6760 | ||
6794 | :term:`ROOTFS_POSTINSTALL_COMMAND` | 6761 | :term:`ROOTFS_POSTINSTALL_COMMAND` |
6795 | Specifies a list of functions to call after the OpenEmbedded build | 6762 | Specifies a list of functions to call after the OpenEmbedded build |
@@ -7013,7 +6980,7 @@ system and gives an overview of their function and contents. | |||
7013 | set this variable. Instead, use :term:`SDKMACHINE`. | 6980 | set this variable. Instead, use :term:`SDKMACHINE`. |
7014 | 6981 | ||
7015 | :term:`SDK_BUILDINFO_FILE` | 6982 | :term:`SDK_BUILDINFO_FILE` |
7016 | When using the :ref:`image-buildinfo <ref-classes-image-buildinfo>` class, | 6983 | When using the :ref:`ref-classes-image-buildinfo` class, |
7017 | specifies the file in the SDK to write the build information into. The | 6984 | specifies the file in the SDK to write the build information into. The |
7018 | default value is "``/buildinfo``". | 6985 | default value is "``/buildinfo``". |
7019 | 6986 | ||
@@ -7145,7 +7112,7 @@ system and gives an overview of their function and contents. | |||
7145 | 7112 | ||
7146 | :term:`SDK_PREFIX` | 7113 | :term:`SDK_PREFIX` |
7147 | The toolchain binary prefix used for | 7114 | The toolchain binary prefix used for |
7148 | :ref:`nativesdk <ref-classes-nativesdk>` recipes. The | 7115 | :ref:`ref-classes-nativesdk` recipes. The |
7149 | OpenEmbedded build system uses the :term:`SDK_PREFIX` value to set the | 7116 | OpenEmbedded build system uses the :term:`SDK_PREFIX` value to set the |
7150 | :term:`TARGET_PREFIX` when building | 7117 | :term:`TARGET_PREFIX` when building |
7151 | ``nativesdk`` recipes. The default value is "${SDK_SYS}-". | 7118 | ``nativesdk`` recipes. The default value is "${SDK_SYS}-". |
@@ -7331,25 +7298,22 @@ system and gives an overview of their function and contents. | |||
7331 | EXTRA_IMAGE_FEATURES += "read-only-rootfs" | 7298 | EXTRA_IMAGE_FEATURES += "read-only-rootfs" |
7332 | 7299 | ||
7333 | :term:`SETUPTOOLS_BUILD_ARGS` | 7300 | :term:`SETUPTOOLS_BUILD_ARGS` |
7334 | When used by recipes that inherit the | 7301 | When used by recipes that inherit the :ref:`ref-classes-setuptools3` |
7335 | :ref:`setuptools3 <ref-classes-setuptools3>` class, this variable can | 7302 | class, this variable can be used to specify additional arguments to be |
7336 | be used to specify additional arguments to be passed to ``setup.py build`` | 7303 | passed to ``setup.py build`` in the ``setuptools3_do_compile()`` task. |
7337 | in the ``setuptools3_do_compile()`` task. | ||
7338 | 7304 | ||
7339 | :term:`SETUPTOOLS_INSTALL_ARGS` | 7305 | :term:`SETUPTOOLS_INSTALL_ARGS` |
7340 | When used by recipes that inherit the | 7306 | When used by recipes that inherit the :ref:`ref-classes-setuptools3` |
7341 | :ref:`setuptools3 <ref-classes-setuptools3>` class, this variable can | 7307 | class, this variable can be used to specify additional arguments to be |
7342 | be used to specify additional arguments to be passed to ``setup.py install`` | 7308 | passed to ``setup.py install`` in the ``setuptools3_do_install()`` task. |
7343 | in the ``setuptools3_do_install()`` task. | ||
7344 | 7309 | ||
7345 | :term:`SETUPTOOLS_SETUP_PATH` | 7310 | :term:`SETUPTOOLS_SETUP_PATH` |
7346 | When used by recipes that inherit the | 7311 | When used by recipes that inherit the :ref:`ref-classes-setuptools3` |
7347 | :ref:`setuptools3 <ref-classes-setuptools3>` class, this variable should | 7312 | class, this variable should be used to specify the directory in which |
7348 | be used to specify the directory in which the ``setup.py`` file is | 7313 | the ``setup.py`` file is located if it is not at the root of the source |
7349 | located if it is not at the root of the source tree (as specified by | 7314 | tree (as specified by :term:`S`). For example, in a recipe where the |
7350 | :term:`S`). For example, in a recipe where the sources are fetched from | 7315 | sources are fetched from a Git repository and ``setup.py`` is in a |
7351 | a Git repository and ``setup.py`` is in a ``python/pythonmodule`` | 7316 | ``python/pythonmodule`` subdirectory, you would have this:: |
7352 | subdirectory, you would have this:: | ||
7353 | 7317 | ||
7354 | S = "${WORKDIR}/git" | 7318 | S = "${WORKDIR}/git" |
7355 | SETUPTOOLS_SETUP_PATH = "${S}/python/pythonmodule" | 7319 | SETUPTOOLS_SETUP_PATH = "${S}/python/pythonmodule" |
@@ -7494,7 +7458,7 @@ system and gives an overview of their function and contents. | |||
7494 | specified in :term:`SRC_URI`. | 7458 | specified in :term:`SRC_URI`. |
7495 | 7459 | ||
7496 | To use this variable, you must globally inherit the | 7460 | To use this variable, you must globally inherit the |
7497 | :ref:`own-mirrors <ref-classes-own-mirrors>` class and then provide | 7461 | :ref:`ref-classes-own-mirrors` class and then provide |
7498 | the URL to your mirrors. Here is the general syntax:: | 7462 | the URL to your mirrors. Here is the general syntax:: |
7499 | 7463 | ||
7500 | INHERIT += "own-mirrors" | 7464 | INHERIT += "own-mirrors" |
@@ -7520,7 +7484,7 @@ system and gives an overview of their function and contents. | |||
7520 | ``core-image-minimal`` for the ``qemux86-64`` machine, enabling this | 7484 | ``core-image-minimal`` for the ``qemux86-64`` machine, enabling this |
7521 | option multiplied the size of the ``tmp/deploy/spdx`` directory by a | 7485 | option multiplied the size of the ``tmp/deploy/spdx`` directory by a |
7522 | factor of 13 (+1.6 GiB for this image), compared to just using the | 7486 | factor of 13 (+1.6 GiB for this image), compared to just using the |
7523 | :ref:`create-spdx <ref-classes-create-spdx>` class with no option. | 7487 | :ref:`ref-classes-create-spdx` class with no option. |
7524 | 7488 | ||
7525 | Note that this option doesn't increase the size of :term:`SPDX` | 7489 | Note that this option doesn't increase the size of :term:`SPDX` |
7526 | files in ``tmp/deploy/images/MACHINE``. | 7490 | files in ``tmp/deploy/images/MACHINE``. |
@@ -7546,7 +7510,7 @@ system and gives an overview of their function and contents. | |||
7546 | ``core-image-minimal`` for the ``qemux86-64`` machine, enabling | 7510 | ``core-image-minimal`` for the ``qemux86-64`` machine, enabling |
7547 | these options multiplied the size of the ``tmp/deploy/spdx`` | 7511 | these options multiplied the size of the ``tmp/deploy/spdx`` |
7548 | directory by a factor of 11 (+1.4 GiB for this image), | 7512 | directory by a factor of 11 (+1.4 GiB for this image), |
7549 | compared to just using the :ref:`create-spdx <ref-classes-create-spdx>` | 7513 | compared to just using the :ref:`ref-classes-create-spdx` |
7550 | class with no option. | 7514 | class with no option. |
7551 | 7515 | ||
7552 | Note that using this option only marginally increases the size | 7516 | Note that using this option only marginally increases the size |
@@ -7572,8 +7536,8 @@ system and gives an overview of their function and contents. | |||
7572 | directory by a factor of 3 (+291 MiB for this image), | 7536 | directory by a factor of 3 (+291 MiB for this image), |
7573 | and the size of the ``IMAGE-MACHINE.spdx.tar.zst`` in | 7537 | and the size of the ``IMAGE-MACHINE.spdx.tar.zst`` in |
7574 | ``tmp/deploy/images/MACHINE`` by a factor of 130 (+15 MiB for this | 7538 | ``tmp/deploy/images/MACHINE`` by a factor of 130 (+15 MiB for this |
7575 | image), compared to just using the | 7539 | image), compared to just using the :ref:`ref-classes-create-spdx` class |
7576 | :ref:`create-spdx <ref-classes-create-spdx>` class with no option. | 7540 | with no option. |
7577 | 7541 | ||
7578 | :term:`SPDX_PRETTY` | 7542 | :term:`SPDX_PRETTY` |
7579 | This option makes the SPDX output more human-readable, using | 7543 | This option makes the SPDX output more human-readable, using |
@@ -7723,15 +7687,15 @@ system and gives an overview of their function and contents. | |||
7723 | 7687 | ||
7724 | :term:`SRCTREECOVEREDTASKS` | 7688 | :term:`SRCTREECOVEREDTASKS` |
7725 | A list of tasks that are typically not relevant (and therefore skipped) | 7689 | A list of tasks that are typically not relevant (and therefore skipped) |
7726 | when building using the :ref:`externalsrc <ref-classes-externalsrc>` | 7690 | when building using the :ref:`ref-classes-externalsrc` |
7727 | class. The default value as set in that class file is the set of tasks | 7691 | class. The default value as set in that class file is the set of tasks |
7728 | that are rarely needed when using external source:: | 7692 | that are rarely needed when using external source:: |
7729 | 7693 | ||
7730 | SRCTREECOVEREDTASKS ?= "do_patch do_unpack do_fetch" | 7694 | SRCTREECOVEREDTASKS ?= "do_patch do_unpack do_fetch" |
7731 | 7695 | ||
7732 | The notable exception is when processing external kernel source as | 7696 | The notable exception is when processing external kernel source as |
7733 | defined in the :ref:`kernel-yocto <ref-classes-kernel-yocto>` | 7697 | defined in the :ref:`ref-classes-kernel-yocto` class file (formatted for |
7734 | class file (formatted for aesthetics):: | 7698 | aesthetics):: |
7735 | 7699 | ||
7736 | SRCTREECOVEREDTASKS += "\ | 7700 | SRCTREECOVEREDTASKS += "\ |
7737 | do_validate_branches \ | 7701 | do_validate_branches \ |
@@ -7799,10 +7763,9 @@ system and gives an overview of their function and contents. | |||
7799 | a different GCC version for native builds, you must configure | 7763 | a different GCC version for native builds, you must configure |
7800 | :term:`SSTATE_MIRRORS` with a regular expression that maps local search | 7764 | :term:`SSTATE_MIRRORS` with a regular expression that maps local search |
7801 | paths to server paths. The paths need to take into account | 7765 | paths to server paths. The paths need to take into account |
7802 | :term:`NATIVELSBSTRING` set by the | 7766 | :term:`NATIVELSBSTRING` set by the :ref:`ref-classes-uninative` class. |
7803 | :ref:`uninative <ref-classes-uninative>` class. For example, the | 7767 | For example, the following maps the local search path ``universal-4.9`` |
7804 | following maps the local search path ``universal-4.9`` to the | 7768 | to the server-provided path server_url_sstate_path:: |
7805 | server-provided path server_url_sstate_path:: | ||
7806 | 7769 | ||
7807 | SSTATE_MIRRORS ?= "file://universal-4.9/(.*) https://server_url_sstate_path/universal-4.8/\1" | 7770 | SSTATE_MIRRORS ?= "file://universal-4.9/(.*) https://server_url_sstate_path/universal-4.8/\1" |
7808 | 7771 | ||
@@ -7828,11 +7791,9 @@ system and gives an overview of their function and contents. | |||
7828 | by the :term:`SSTATE_SCAN_FILES` variable. Typically, recipes add files | 7791 | by the :term:`SSTATE_SCAN_FILES` variable. Typically, recipes add files |
7829 | they want to be scanned to the value of :term:`SSTATE_SCAN_FILES` rather | 7792 | they want to be scanned to the value of :term:`SSTATE_SCAN_FILES` rather |
7830 | than the variable being comprehensively set. The | 7793 | than the variable being comprehensively set. The |
7831 | :ref:`sstate <ref-classes-sstate>` class specifies the default list | 7794 | :ref:`ref-classes-sstate` class specifies the default list of files. |
7832 | of files. | ||
7833 | 7795 | ||
7834 | For details on the process, see the | 7796 | For details on the process, see the :ref:`ref-classes-staging` class. |
7835 | :ref:`staging <ref-classes-staging>` class. | ||
7836 | 7797 | ||
7837 | :term:`STAGING_BASE_LIBDIR_NATIVE` | 7798 | :term:`STAGING_BASE_LIBDIR_NATIVE` |
7838 | Specifies the path to the ``/lib`` subdirectory of the sysroot | 7799 | Specifies the path to the ``/lib`` subdirectory of the sysroot |
@@ -7943,10 +7904,10 @@ system and gives an overview of their function and contents. | |||
7943 | which is the majority, :term:`STAGING_DIR_TARGET` is set to match | 7904 | which is the majority, :term:`STAGING_DIR_TARGET` is set to match |
7944 | :term:`STAGING_DIR_HOST`. | 7905 | :term:`STAGING_DIR_HOST`. |
7945 | 7906 | ||
7946 | Some recipes build binaries that can run on the target system but | 7907 | Some recipes build binaries that can run on the target system but those |
7947 | those binaries in turn generate code for another different system | 7908 | binaries in turn generate code for another different system (e.g. |
7948 | (e.g. :ref:`cross-canadian <ref-classes-cross-canadian>` recipes). Using terminology from GNU, the | 7909 | :ref:`ref-classes-cross-canadian` recipes). Using terminology from GNU, |
7949 | primary system is referred to as the "HOST" and the secondary, or | 7910 | the primary system is referred to as the "HOST" and the secondary, or |
7950 | different, system is referred to as the "TARGET". Thus, the binaries | 7911 | different, system is referred to as the "TARGET". Thus, the binaries |
7951 | run on the "HOST" system and generate binaries for the "TARGET" | 7912 | run on the "HOST" system and generate binaries for the "TARGET" |
7952 | system. The :term:`STAGING_DIR_HOST` variable points to the sysroot used | 7913 | system. The :term:`STAGING_DIR_HOST` variable points to the sysroot used |
@@ -8040,7 +8001,7 @@ system and gives an overview of their function and contents. | |||
8040 | 8001 | ||
8041 | SYSLINUX_DEFAULT_CONSOLE = "console=ttyX" | 8002 | SYSLINUX_DEFAULT_CONSOLE = "console=ttyX" |
8042 | 8003 | ||
8043 | The :ref:`syslinux <ref-classes-syslinux>` class initially sets | 8004 | The :ref:`ref-classes-syslinux` class initially sets |
8044 | this variable to null but then checks for a value later. | 8005 | this variable to null but then checks for a value later. |
8045 | 8006 | ||
8046 | :term:`SYSLINUX_OPTS` | 8007 | :term:`SYSLINUX_OPTS` |
@@ -8048,14 +8009,14 @@ system and gives an overview of their function and contents. | |||
8048 | this variable in your recipe. If you want to list multiple options, | 8009 | this variable in your recipe. If you want to list multiple options, |
8049 | separate the options with a semicolon character (``;``). | 8010 | separate the options with a semicolon character (``;``). |
8050 | 8011 | ||
8051 | The :ref:`syslinux <ref-classes-syslinux>` class uses this variable | 8012 | The :ref:`ref-classes-syslinux` class uses this variable |
8052 | to create a set of options. | 8013 | to create a set of options. |
8053 | 8014 | ||
8054 | :term:`SYSLINUX_SERIAL` | 8015 | :term:`SYSLINUX_SERIAL` |
8055 | Specifies the alternate serial port or turns it off. To turn off | 8016 | Specifies the alternate serial port or turns it off. To turn off |
8056 | serial, set this variable to an empty string in your recipe. The | 8017 | serial, set this variable to an empty string in your recipe. The |
8057 | variable's default value is set in the | 8018 | variable's default value is set in the |
8058 | :ref:`syslinux <ref-classes-syslinux>` class as follows:: | 8019 | :ref:`ref-classes-syslinux` class as follows:: |
8059 | 8020 | ||
8060 | SYSLINUX_SERIAL ?= "0 115200" | 8021 | SYSLINUX_SERIAL ?= "0 115200" |
8061 | 8022 | ||
@@ -8063,8 +8024,8 @@ system and gives an overview of their function and contents. | |||
8063 | 8024 | ||
8064 | :term:`SYSLINUX_SERIAL_TTY` | 8025 | :term:`SYSLINUX_SERIAL_TTY` |
8065 | Specifies the alternate console=tty... kernel boot argument. The | 8026 | Specifies the alternate console=tty... kernel boot argument. The |
8066 | variable's default value is set in the | 8027 | variable's default value is set in the :ref:`ref-classes-syslinux` |
8067 | :ref:`syslinux <ref-classes-syslinux>` class as follows:: | 8028 | class as follows:: |
8068 | 8029 | ||
8069 | SYSLINUX_SERIAL_TTY ?= "console=ttyS0,115200" | 8030 | SYSLINUX_SERIAL_TTY ?= "console=ttyS0,115200" |
8070 | 8031 | ||
@@ -8074,7 +8035,7 @@ system and gives an overview of their function and contents. | |||
8074 | An ``.LSS`` file used as the background for the VGA boot menu when | 8035 | An ``.LSS`` file used as the background for the VGA boot menu when |
8075 | you use the boot menu. You need to set this variable in your recipe. | 8036 | you use the boot menu. You need to set this variable in your recipe. |
8076 | 8037 | ||
8077 | The :ref:`syslinux <ref-classes-syslinux>` class checks for this | 8038 | The :ref:`ref-classes-syslinux` class checks for this |
8078 | variable and if found, the OpenEmbedded build system installs the | 8039 | variable and if found, the OpenEmbedded build system installs the |
8079 | splash screen. | 8040 | splash screen. |
8080 | 8041 | ||
@@ -8150,12 +8111,12 @@ system and gives an overview of their function and contents. | |||
8150 | processing on the staged files, or to stage additional files. | 8111 | processing on the staged files, or to stage additional files. |
8151 | 8112 | ||
8152 | :term:`SYSTEMD_AUTO_ENABLE` | 8113 | :term:`SYSTEMD_AUTO_ENABLE` |
8153 | When inheriting the :ref:`systemd <ref-classes-systemd>` class, | 8114 | When inheriting the :ref:`ref-classes-systemd` class, |
8154 | this variable specifies whether the specified service in | 8115 | this variable specifies whether the specified service in |
8155 | :term:`SYSTEMD_SERVICE` should start | 8116 | :term:`SYSTEMD_SERVICE` should start |
8156 | automatically or not. By default, the service is enabled to | 8117 | automatically or not. By default, the service is enabled to |
8157 | automatically start at boot time. The default setting is in the | 8118 | automatically start at boot time. The default setting is in the |
8158 | :ref:`systemd <ref-classes-systemd>` class as follows:: | 8119 | :ref:`ref-classes-systemd` class as follows:: |
8159 | 8120 | ||
8160 | SYSTEMD_AUTO_ENABLE ??= "enable" | 8121 | SYSTEMD_AUTO_ENABLE ??= "enable" |
8161 | 8122 | ||
@@ -8165,7 +8126,7 @@ system and gives an overview of their function and contents. | |||
8165 | When :term:`EFI_PROVIDER` is set to | 8126 | When :term:`EFI_PROVIDER` is set to |
8166 | "systemd-boot", the :term:`SYSTEMD_BOOT_CFG` variable specifies the | 8127 | "systemd-boot", the :term:`SYSTEMD_BOOT_CFG` variable specifies the |
8167 | configuration file that should be used. By default, the | 8128 | configuration file that should be used. By default, the |
8168 | :ref:`systemd-boot <ref-classes-systemd-boot>` class sets the | 8129 | :ref:`ref-classes-systemd-boot` class sets the |
8169 | :term:`SYSTEMD_BOOT_CFG` as follows:: | 8130 | :term:`SYSTEMD_BOOT_CFG` as follows:: |
8170 | 8131 | ||
8171 | SYSTEMD_BOOT_CFG ?= "${S}/loader.conf" | 8132 | SYSTEMD_BOOT_CFG ?= "${S}/loader.conf" |
@@ -8177,9 +8138,8 @@ system and gives an overview of their function and contents. | |||
8177 | When :term:`EFI_PROVIDER` is set to | 8138 | When :term:`EFI_PROVIDER` is set to |
8178 | "systemd-boot", the :term:`SYSTEMD_BOOT_ENTRIES` variable specifies a | 8139 | "systemd-boot", the :term:`SYSTEMD_BOOT_ENTRIES` variable specifies a |
8179 | list of entry files (``*.conf``) to install that contain one boot | 8140 | list of entry files (``*.conf``) to install that contain one boot |
8180 | entry per file. By default, the | 8141 | entry per file. By default, the :ref:`ref-classes-systemd-boot` class |
8181 | :ref:`systemd-boot <ref-classes-systemd-boot>` class sets the | 8142 | sets the :term:`SYSTEMD_BOOT_ENTRIES` as follows:: |
8182 | :term:`SYSTEMD_BOOT_ENTRIES` as follows:: | ||
8183 | 8143 | ||
8184 | SYSTEMD_BOOT_ENTRIES ?= "" | 8144 | SYSTEMD_BOOT_ENTRIES ?= "" |
8185 | 8145 | ||
@@ -8190,7 +8150,7 @@ system and gives an overview of their function and contents. | |||
8190 | When :term:`EFI_PROVIDER` is set to | 8150 | When :term:`EFI_PROVIDER` is set to |
8191 | "systemd-boot", the :term:`SYSTEMD_BOOT_TIMEOUT` variable specifies the | 8151 | "systemd-boot", the :term:`SYSTEMD_BOOT_TIMEOUT` variable specifies the |
8192 | boot menu timeout in seconds. By default, the | 8152 | boot menu timeout in seconds. By default, the |
8193 | :ref:`systemd-boot <ref-classes-systemd-boot>` class sets the | 8153 | :ref:`ref-classes-systemd-boot` class sets the |
8194 | :term:`SYSTEMD_BOOT_TIMEOUT` as follows:: | 8154 | :term:`SYSTEMD_BOOT_TIMEOUT` as follows:: |
8195 | 8155 | ||
8196 | SYSTEMD_BOOT_TIMEOUT ?= "10" | 8156 | SYSTEMD_BOOT_TIMEOUT ?= "10" |
@@ -8216,7 +8176,7 @@ system and gives an overview of their function and contents. | |||
8216 | SYSTEMD_DEFAULT_TARGET = "graphical.target" | 8176 | SYSTEMD_DEFAULT_TARGET = "graphical.target" |
8217 | 8177 | ||
8218 | :term:`SYSTEMD_PACKAGES` | 8178 | :term:`SYSTEMD_PACKAGES` |
8219 | When inheriting the :ref:`systemd <ref-classes-systemd>` class, | 8179 | When inheriting the :ref:`ref-classes-systemd` class, |
8220 | this variable locates the systemd unit files when they are not found | 8180 | this variable locates the systemd unit files when they are not found |
8221 | in the main recipe's package. By default, the :term:`SYSTEMD_PACKAGES` | 8181 | in the main recipe's package. By default, the :term:`SYSTEMD_PACKAGES` |
8222 | variable is set such that the systemd unit files are assumed to | 8182 | variable is set such that the systemd unit files are assumed to |
@@ -8229,7 +8189,7 @@ system and gives an overview of their function and contents. | |||
8229 | the build system can find the systemd unit files. | 8189 | the build system can find the systemd unit files. |
8230 | 8190 | ||
8231 | :term:`SYSTEMD_SERVICE` | 8191 | :term:`SYSTEMD_SERVICE` |
8232 | When inheriting the :ref:`systemd <ref-classes-systemd>` class, | 8192 | When inheriting the :ref:`ref-classes-systemd` class, |
8233 | this variable specifies the systemd service name for a package. | 8193 | this variable specifies the systemd service name for a package. |
8234 | 8194 | ||
8235 | Multiple services can be specified, each one separated by a space. | 8195 | Multiple services can be specified, each one separated by a space. |
@@ -8392,7 +8352,7 @@ system and gives an overview of their function and contents. | |||
8392 | - For native recipes, the build system sets the variable to the | 8352 | - For native recipes, the build system sets the variable to the |
8393 | value of :term:`BUILD_PREFIX`. | 8353 | value of :term:`BUILD_PREFIX`. |
8394 | 8354 | ||
8395 | - For native SDK recipes (:ref:`nativesdk <ref-classes-nativesdk>`), | 8355 | - For native SDK recipes (:ref:`ref-classes-nativesdk`), |
8396 | the build system sets the variable to the value of :term:`SDK_PREFIX`. | 8356 | the build system sets the variable to the value of :term:`SDK_PREFIX`. |
8397 | 8357 | ||
8398 | :term:`TARGET_SYS` | 8358 | :term:`TARGET_SYS` |
@@ -8952,21 +8912,19 @@ system and gives an overview of their function and contents. | |||
8952 | "sdcard" specifies the :term:`IMAGE_FSTYPES` to use for the U-Boot image. | 8912 | "sdcard" specifies the :term:`IMAGE_FSTYPES` to use for the U-Boot image. |
8953 | 8913 | ||
8954 | For more information on how the :term:`UBOOT_CONFIG` is handled, see the | 8914 | For more information on how the :term:`UBOOT_CONFIG` is handled, see the |
8955 | :ref:`uboot-config <ref-classes-uboot-config>` | 8915 | :ref:`ref-classes-uboot-config` class. |
8956 | class. | ||
8957 | 8916 | ||
8958 | :term:`UBOOT_DTB_LOADADDRESS` | 8917 | :term:`UBOOT_DTB_LOADADDRESS` |
8959 | Specifies the load address for the dtb image used by U-Boot. During FIT | 8918 | Specifies the load address for the dtb image used by U-Boot. During FIT |
8960 | image creation, the :term:`UBOOT_DTB_LOADADDRESS` variable is used in | 8919 | image creation, the :term:`UBOOT_DTB_LOADADDRESS` variable is used in |
8961 | :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` class to specify | 8920 | :ref:`ref-classes-kernel-fitimage` class to specify the load address to be |
8962 | the load address to be used in | 8921 | used in creating the dtb sections of Image Tree Source for the FIT image. |
8963 | creating the dtb sections of Image Tree Source for the FIT image. | ||
8964 | 8922 | ||
8965 | :term:`UBOOT_DTBO_LOADADDRESS` | 8923 | :term:`UBOOT_DTBO_LOADADDRESS` |
8966 | Specifies the load address for the dtbo image used by U-Boot. During FIT | 8924 | Specifies the load address for the dtbo image used by U-Boot. During FIT |
8967 | image creation, the :term:`UBOOT_DTBO_LOADADDRESS` variable is used in | 8925 | image creation, the :term:`UBOOT_DTBO_LOADADDRESS` variable is used in |
8968 | :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` class to specify the load address to be used in | 8926 | :ref:`ref-classes-kernel-fitimage` class to specify the load address to be |
8969 | creating the dtbo sections of Image Tree Source for the FIT image. | 8927 | used in creating the dtbo sections of Image Tree Source for the FIT image. |
8970 | 8928 | ||
8971 | :term:`UBOOT_ENTRYPOINT` | 8929 | :term:`UBOOT_ENTRYPOINT` |
8972 | Specifies the entry point for the U-Boot image. During U-Boot image | 8930 | Specifies the entry point for the U-Boot image. During U-Boot image |
@@ -9001,16 +8959,16 @@ system and gives an overview of their function and contents. | |||
9001 | 8959 | ||
9002 | :term:`UBOOT_MKIMAGE` | 8960 | :term:`UBOOT_MKIMAGE` |
9003 | Specifies the name of the mkimage command as used by the | 8961 | Specifies the name of the mkimage command as used by the |
9004 | :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` class to assemble | 8962 | :ref:`ref-classes-kernel-fitimage` class to assemble |
9005 | the FIT image. This can be used to substitute an alternative command, wrapper | 8963 | the FIT image. This can be used to substitute an alternative command, wrapper |
9006 | script or function if desired. The default is "uboot-mkimage". | 8964 | script or function if desired. The default is "uboot-mkimage". |
9007 | 8965 | ||
9008 | :term:`UBOOT_MKIMAGE_DTCOPTS` | 8966 | :term:`UBOOT_MKIMAGE_DTCOPTS` |
9009 | Options for the device tree compiler passed to mkimage '-D' | 8967 | Options for the device tree compiler passed to mkimage '-D' feature while |
9010 | feature while creating FIT image in :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` class. | 8968 | creating FIT image in :ref:`ref-classes-kernel-fitimage` class. If |
9011 | If :term:`UBOOT_MKIMAGE_DTCOPTS` is not set then | 8969 | :term:`UBOOT_MKIMAGE_DTCOPTS` is not set then |
9012 | :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` will not pass the | 8970 | :ref:`ref-classes-kernel-fitimage` will not pass the ``-D`` option to |
9013 | ``-D`` option to mkimage. | 8971 | mkimage. |
9014 | 8972 | ||
9015 | :term:`UBOOT_MKIMAGE_KERNEL_TYPE` | 8973 | :term:`UBOOT_MKIMAGE_KERNEL_TYPE` |
9016 | Specifies the type argument for the kernel as passed to ``uboot-mkimage``. | 8974 | Specifies the type argument for the kernel as passed to ``uboot-mkimage``. |
@@ -9018,31 +8976,27 @@ system and gives an overview of their function and contents. | |||
9018 | 8976 | ||
9019 | :term:`UBOOT_MKIMAGE_SIGN` | 8977 | :term:`UBOOT_MKIMAGE_SIGN` |
9020 | Specifies the name of the mkimage command as used by the | 8978 | Specifies the name of the mkimage command as used by the |
9021 | :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` class to sign | 8979 | :ref:`ref-classes-kernel-fitimage` class to sign |
9022 | the FIT image after it has been assembled (if enabled). This can be used | 8980 | the FIT image after it has been assembled (if enabled). This can be used |
9023 | to substitute an alternative command, wrapper script or function if | 8981 | to substitute an alternative command, wrapper script or function if |
9024 | desired. The default is "${:term:`UBOOT_MKIMAGE`}". | 8982 | desired. The default is "${:term:`UBOOT_MKIMAGE`}". |
9025 | 8983 | ||
9026 | :term:`UBOOT_MKIMAGE_SIGN_ARGS` | 8984 | :term:`UBOOT_MKIMAGE_SIGN_ARGS` |
9027 | Optionally specifies additional arguments for the | 8985 | Optionally specifies additional arguments for the |
9028 | :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` class to pass to the | 8986 | :ref:`ref-classes-kernel-fitimage` class to pass to the |
9029 | mkimage command when signing the FIT image. | 8987 | mkimage command when signing the FIT image. |
9030 | 8988 | ||
9031 | :term:`UBOOT_RD_ENTRYPOINT` | 8989 | :term:`UBOOT_RD_ENTRYPOINT` |
9032 | Specifies the entrypoint for the RAM disk image. | 8990 | Specifies the entrypoint for the RAM disk image. During FIT image |
9033 | During FIT image creation, the | 8991 | creation, the :term:`UBOOT_RD_ENTRYPOINT` variable is used in |
9034 | :term:`UBOOT_RD_ENTRYPOINT` variable is used | 8992 | :ref:`ref-classes-kernel-fitimage` class to specify the entrypoint to be |
9035 | in :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` class to specify the | 8993 | used in creating the Image Tree Source for the FIT image. |
9036 | entrypoint to be used in creating the Image Tree Source for | ||
9037 | the FIT image. | ||
9038 | 8994 | ||
9039 | :term:`UBOOT_RD_LOADADDRESS` | 8995 | :term:`UBOOT_RD_LOADADDRESS` |
9040 | Specifies the load address for the RAM disk image. | 8996 | Specifies the load address for the RAM disk image. During FIT image |
9041 | During FIT image creation, the | 8997 | creation, the :term:`UBOOT_RD_LOADADDRESS` variable is used in |
9042 | :term:`UBOOT_RD_LOADADDRESS` variable is used | 8998 | :ref:`ref-classes-kernel-fitimage` class to specify the load address to |
9043 | in :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` class to specify the | 8999 | be used in creating the Image Tree Source for the FIT image. |
9044 | load address to be used in creating the Image Tree Source for | ||
9045 | the FIT image. | ||
9046 | 9000 | ||
9047 | :term:`UBOOT_SIGN_ENABLE` | 9001 | :term:`UBOOT_SIGN_ENABLE` |
9048 | Enable signing of FIT image. The default value is "0". | 9002 | Enable signing of FIT image. The default value is "0". |
@@ -9084,12 +9038,12 @@ system and gives an overview of their function and contents. | |||
9084 | 9038 | ||
9085 | The configure arguments check that uses | 9039 | The configure arguments check that uses |
9086 | :term:`UNKNOWN_CONFIGURE_OPT_IGNORE` is part of the | 9040 | :term:`UNKNOWN_CONFIGURE_OPT_IGNORE` is part of the |
9087 | :ref:`insane <ref-classes-insane>` class and is only enabled if the | 9041 | :ref:`ref-classes-insane` class and is only enabled if the |
9088 | recipe inherits the :ref:`autotools <ref-classes-autotools>` class. | 9042 | recipe inherits the :ref:`ref-classes-autotools` class. |
9089 | 9043 | ||
9090 | :term:`UPDATERCPN` | 9044 | :term:`UPDATERCPN` |
9091 | For recipes inheriting the | 9045 | For recipes inheriting the |
9092 | :ref:`update-rc.d <ref-classes-update-rc.d>` class, :term:`UPDATERCPN` | 9046 | :ref:`ref-classes-update-rc.d` class, :term:`UPDATERCPN` |
9093 | specifies the package that contains the initscript that is enabled. | 9047 | specifies the package that contains the initscript that is enabled. |
9094 | 9048 | ||
9095 | The default value is "${PN}". Given that almost all recipes that | 9049 | The default value is "${PN}". Given that almost all recipes that |
@@ -9243,7 +9197,7 @@ system and gives an overview of their function and contents. | |||
9243 | causes the build system to use static ``gid`` values. | 9197 | causes the build system to use static ``gid`` values. |
9244 | 9198 | ||
9245 | :term:`USERADD_PACKAGES` | 9199 | :term:`USERADD_PACKAGES` |
9246 | When inheriting the :ref:`useradd <ref-classes-useradd>` class, | 9200 | When inheriting the :ref:`ref-classes-useradd` class, |
9247 | this variable specifies the individual packages within the recipe | 9201 | this variable specifies the individual packages within the recipe |
9248 | that require users and/or groups to be added. | 9202 | that require users and/or groups to be added. |
9249 | 9203 | ||
@@ -9260,7 +9214,7 @@ system and gives an overview of their function and contents. | |||
9260 | :term:`GROUPADD_PARAM`, or :term:`GROUPMEMS_PARAM` variables. | 9214 | :term:`GROUPADD_PARAM`, or :term:`GROUPMEMS_PARAM` variables. |
9261 | 9215 | ||
9262 | :term:`USERADD_PARAM` | 9216 | :term:`USERADD_PARAM` |
9263 | When inheriting the :ref:`useradd <ref-classes-useradd>` class, | 9217 | When inheriting the :ref:`ref-classes-useradd` class, |
9264 | this variable specifies for a package what parameters should pass to | 9218 | this variable specifies for a package what parameters should pass to |
9265 | the ``useradd`` command if you add a user to the system when the | 9219 | the ``useradd`` command if you add a user to the system when the |
9266 | package is installed. | 9220 | package is installed. |
diff --git a/documentation/sdk-manual/appendix-customizing.rst b/documentation/sdk-manual/appendix-customizing.rst index c1a36c471d..2be76875e0 100644 --- a/documentation/sdk-manual/appendix-customizing.rst +++ b/documentation/sdk-manual/appendix-customizing.rst | |||
@@ -49,8 +49,7 @@ build system applies them against ``local.conf`` and ``auto.conf``: | |||
49 | :term:`ESDK_CLASS_INHERIT_DISABLE` to disable these classes is the typical | 49 | :term:`ESDK_CLASS_INHERIT_DISABLE` to disable these classes is the typical |
50 | method to disable classes that are problematic or unnecessary in the SDK | 50 | method to disable classes that are problematic or unnecessary in the SDK |
51 | context. The default value disables the | 51 | context. The default value disables the |
52 | :ref:`buildhistory <ref-classes-buildhistory>` and | 52 | :ref:`ref-classes-buildhistory` and :ref:`ref-classes-icecc` classes. |
53 | :ref:`icecc <ref-classes-icecc>` classes. | ||
54 | 53 | ||
55 | Additionally, the contents of ``conf/sdk-extra.conf``, when present, are | 54 | Additionally, the contents of ``conf/sdk-extra.conf``, when present, are |
56 | appended to the end of ``conf/local.conf`` within the produced SDK, | 55 | appended to the end of ``conf/local.conf`` within the produced SDK, |
diff --git a/documentation/sdk-manual/extensible.rst b/documentation/sdk-manual/extensible.rst index e8a0a5b3ce..7c7ceb695a 100644 --- a/documentation/sdk-manual/extensible.rst +++ b/documentation/sdk-manual/extensible.rst | |||
@@ -1079,9 +1079,8 @@ does not include complete instructions for building the software. | |||
1079 | Instead, common functionality is encapsulated in classes inherited with | 1079 | Instead, common functionality is encapsulated in classes inherited with |
1080 | the ``inherit`` directive. This technique leaves the recipe to describe | 1080 | the ``inherit`` directive. This technique leaves the recipe to describe |
1081 | just the things that are specific to the software being built. There is | 1081 | just the things that are specific to the software being built. There is |
1082 | a :ref:`base <ref-classes-base>` class that | 1082 | a :ref:`ref-classes-base` class that is implicitly inherited by all recipes |
1083 | is implicitly inherited by all recipes and provides the functionality | 1083 | and provides the functionality that most recipes typically need. |
1084 | that most recipes typically need. | ||
1085 | 1084 | ||
1086 | The remainder of this section presents information useful when working | 1085 | The remainder of this section presents information useful when working |
1087 | with recipes. | 1086 | with recipes. |
diff --git a/documentation/test-manual/intro.rst b/documentation/test-manual/intro.rst index 2d75e141f1..aaf64ae017 100644 --- a/documentation/test-manual/intro.rst +++ b/documentation/test-manual/intro.rst | |||
@@ -100,12 +100,11 @@ the following types of tests: | |||
100 | different configurations, such as different init systems. The | 100 | different configurations, such as different init systems. The |
101 | Autobuilder tests literally hundreds of configurations and targets. | 101 | Autobuilder tests literally hundreds of configurations and targets. |
102 | 102 | ||
103 | - *Sanity Checks During the Build Process:* Tests initiated through | 103 | - *Sanity Checks During the Build Process:* Tests initiated through the |
104 | the :ref:`insane <ref-classes-insane>` | 104 | :ref:`ref-classes-insane` class. These checks ensure the output of the |
105 | class. These checks ensure the output of the builds are correct. | 105 | builds are correct. For example, does the ELF architecture in the |
106 | For example, does the ELF architecture in the generated binaries | 106 | generated binaries match the target system? ARM binaries would not work |
107 | match the target system? ARM binaries would not work in a MIPS | 107 | in a MIPS system! |
108 | system! | ||
109 | 108 | ||
110 | - *Build Performance Testing:* Tests whether or not commonly used steps | 109 | - *Build Performance Testing:* Tests whether or not commonly used steps |
111 | during builds work efficiently and avoid regressions. Tests to time | 110 | during builds work efficiently and avoid regressions. Tests to time |
@@ -121,7 +120,8 @@ the following types of tests: | |||
121 | 120 | ||
122 | $ bitbake image -c testsdkext | 121 | $ bitbake image -c testsdkext |
123 | 122 | ||
124 | The tests utilize the :ref:`testsdkext <ref-classes-testsdk>` class and the ``do_testsdkext`` task. | 123 | The tests utilize the :ref:`ref-classes-testsdk` class and the |
124 | ``do_testsdkext`` task. | ||
125 | 125 | ||
126 | - *Feature Testing:* Various scenario-based tests are run through the | 126 | - *Feature Testing:* Various scenario-based tests are run through the |
127 | :ref:`OpenEmbedded Self test (oe-selftest) <ref-manual/release-process:Testing and Quality Assurance>`. We test oe-selftest on each of the main distributions | 127 | :ref:`OpenEmbedded Self test (oe-selftest) <ref-manual/release-process:Testing and Quality Assurance>`. We test oe-selftest on each of the main distributions |
@@ -131,7 +131,7 @@ the following types of tests: | |||
131 | 131 | ||
132 | $ bitbake image -c testimage | 132 | $ bitbake image -c testimage |
133 | 133 | ||
134 | The tests utilize the :ref:`testimage <ref-classes-testimage>` | 134 | The tests utilize the :ref:`ref-classes-testimage` |
135 | class and the :ref:`ref-tasks-testimage` task. | 135 | class and the :ref:`ref-tasks-testimage` task. |
136 | 136 | ||
137 | - *Layer Testing:* The Autobuilder has the possibility to test whether | 137 | - *Layer Testing:* The Autobuilder has the possibility to test whether |
@@ -151,7 +151,7 @@ the following types of tests: | |||
151 | 151 | ||
152 | $ bitbake image -c testsdk | 152 | $ bitbake image -c testsdk |
153 | 153 | ||
154 | The tests utilize the :ref:`testsdk <ref-classes-testsdk>` class and | 154 | The tests utilize the :ref:`ref-classes-testsdk` class and |
155 | the ``do_testsdk`` task. | 155 | the ``do_testsdk`` task. |
156 | 156 | ||
157 | - *Unit Testing:* Unit tests on various components of the system run | 157 | - *Unit Testing:* Unit tests on various components of the system run |
diff --git a/documentation/test-manual/understand-autobuilder.rst b/documentation/test-manual/understand-autobuilder.rst index b6e331f68c..7a6cb2443b 100644 --- a/documentation/test-manual/understand-autobuilder.rst +++ b/documentation/test-manual/understand-autobuilder.rst | |||
@@ -206,7 +206,7 @@ are general setup steps that are run once and include: | |||
206 | 206 | ||
207 | #. Set up any :term:`buildtools` tarball if configured. | 207 | #. Set up any :term:`buildtools` tarball if configured. |
208 | 208 | ||
209 | #. Call "buildhistory-init" if :ref:`buildhistory <ref-classes-buildhistory>` is configured. | 209 | #. Call "buildhistory-init" if :ref:`ref-classes-buildhistory` is configured. |
210 | 210 | ||
211 | For each step that is configured in ``config.json``, it will perform the | 211 | For each step that is configured in ``config.json``, it will perform the |
212 | following: | 212 | following: |