summaryrefslogtreecommitdiffstats
path: root/documentation/dev-manual
diff options
context:
space:
mode:
authorMichael Opdenacker <michael.opdenacker@bootlin.com>2021-11-23 18:49:18 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-12-13 23:31:34 +0000
commitd21c35bd81ffb806e5157a43231f8af92c0ba90a (patch)
tree606afefe6b6db878d974d6c6850fbe10fd850cb4 /documentation/dev-manual
parent121f5758ab39b305be2e651f538c8b9a6b4e4a81 (diff)
downloadpoky-d21c35bd81ffb806e5157a43231f8af92c0ba90a.tar.gz
misc manuals: add further class references
(From yocto-docs rev: 0693f1f8466a118dc707a9c17d5ca528b4ea368a) Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/dev-manual')
-rw-r--r--documentation/dev-manual/common-tasks.rst32
1 files changed, 15 insertions, 17 deletions
diff --git a/documentation/dev-manual/common-tasks.rst b/documentation/dev-manual/common-tasks.rst
index e870cdb545..0c267d5f48 100644
--- a/documentation/dev-manual/common-tasks.rst
+++ b/documentation/dev-manual/common-tasks.rst
@@ -938,7 +938,8 @@ a recipe and using :term:`EXTRA_IMAGE_FEATURES` from within your
938:term:`Build Directory`. 938:term:`Build Directory`.
939 939
940To understand how these features work, the best reference is 940To understand how these features work, the best reference is
941``meta/classes/image.bbclass``. This class lists out the available 941:ref:`meta/classes/image.bbclass <ref-classes-image>`.
942This class lists out the available
942:term:`IMAGE_FEATURES` of which most map to package groups while some, such 943:term:`IMAGE_FEATURES` of which most map to package groups while some, such
943as ``debug-tweaks`` and ``read-only-rootfs``, resolve as general 944as ``debug-tweaks`` and ``read-only-rootfs``, resolve as general
944configuration settings. 945configuration settings.
@@ -2113,7 +2114,7 @@ statement that essentially identifies itself as being able to provide
2113 2114
2114 PROVIDES += "${@ "virtual/kernel" if (d.getVar("KERNEL_PACKAGE_NAME") == "kernel") else "" }" 2115 PROVIDES += "${@ "virtual/kernel" if (d.getVar("KERNEL_PACKAGE_NAME") == "kernel") else "" }"
2115 2116
2116Any recipe that inherits the ``kernel`` class is 2117Any recipe that inherits the :ref:`kernel <ref-classes-kernel>` class is
2117going to utilize a :term:`PROVIDES` statement that identifies that recipe as 2118going to utilize a :term:`PROVIDES` statement that identifies that recipe as
2118being able to provide the ``virtual/kernel`` item. 2119being able to provide the ``virtual/kernel`` item.
2119 2120
@@ -2459,7 +2460,7 @@ sometimes you have no choice.
2459The easiest solution is to create a recipe that uses the 2460The easiest solution is to create a recipe that uses the
2460:ref:`bin_package <ref-classes-bin-package>` class 2461:ref:`bin_package <ref-classes-bin-package>` class
2461and to be sure that you are using default locations for build artifacts. 2462and to be sure that you are using default locations for build artifacts.
2462In most cases, the ``bin_package`` class handles "skipping" the 2463In most cases, the :ref:`bin_package <ref-classes-bin-package>` class handles "skipping" the
2463configure and compile steps as well as sets things up to grab packages 2464configure and compile steps as well as sets things up to grab packages
2464from the appropriate area. In particular, this class sets ``noexec`` on 2465from the appropriate area. In particular, this class sets ``noexec`` on
2465both the :ref:`ref-tasks-configure` 2466both the :ref:`ref-tasks-configure`
@@ -2467,7 +2468,7 @@ and :ref:`ref-tasks-compile` tasks,
2467sets ``FILES:${PN}`` to "/" so that it picks up all files, and sets up a 2468sets ``FILES:${PN}`` to "/" so that it picks up all files, and sets up a
2468:ref:`ref-tasks-install` task, which 2469:ref:`ref-tasks-install` task, which
2469effectively copies all files from ``${S}`` to ``${D}``. The 2470effectively copies all files from ``${S}`` to ``${D}``. The
2470``bin_package`` class works well when the files extracted into ``${S}`` 2471:ref:`bin_package <ref-classes-bin-package>` class works well when the files extracted into ``${S}``
2471are already laid out in the way they should be laid out on the target. 2472are already laid out in the way they should be laid out on the target.
2472For more information on these variables, see the 2473For more information on these variables, see the
2473:term:`FILES`, 2474:term:`FILES`,
@@ -2492,7 +2493,7 @@ Reference Manual's variable glossary.
2492 section in the Yocto Project Overview and Concepts Manual for more 2493 section in the Yocto Project Overview and Concepts Manual for more
2493 information. 2494 information.
2494 2495
2495If you cannot use the ``bin_package`` class, you need to be sure you are 2496If you cannot use the :ref:`bin_package <ref-classes-bin-package>` class, you need to be sure you are
2496doing the following: 2497doing the following:
2497 2498
2498- Create a recipe where the 2499- Create a recipe where the
@@ -2532,7 +2533,7 @@ doing the following:
2532 2533
2533.. note:: 2534.. note::
2534 2535
2535 If image prelinking is enabled (e.g. "image-prelink" is in :term:`USER_CLASSES` 2536 If image prelinking is enabled (e.g. :ref:`image-prelink <ref-classes-image-prelink>` is in :term:`USER_CLASSES`
2536 which it is by default), prelink will change the binaries in the generated images 2537 which it is by default), prelink will change the binaries in the generated images
2537 and this often catches people out. Remove that class to ensure binaries are 2538 and this often catches people out. Remove that class to ensure binaries are
2538 preserved exactly if that is necessary. 2539 preserved exactly if that is necessary.
@@ -4454,19 +4455,16 @@ Follow these steps to build your target using the files in the downloads
4454directory: 4455directory:
4455 4456
44561. *Using Local Files Only:* Inside your ``local.conf`` file, add the 44571. *Using Local Files Only:* Inside your ``local.conf`` file, add the
4457 :term:`SOURCE_MIRROR_URL` 4458 :term:`SOURCE_MIRROR_URL` variable, inherit the
4458 variable, inherit the 4459 :ref:`own-mirrors <ref-classes-own-mirrors>` class, and use the
4459 :ref:`own-mirrors <ref-classes-own-mirrors>` 4460 :term:`BB_NO_NETWORK` variable to your ``local.conf``.
4460 class, and use the
4461 :term:`BB_NO_NETWORK`
4462 variable to your ``local.conf``.
4463 :: 4461 ::
4464 4462
4465 SOURCE_MIRROR_URL ?= "file:///home/your-download-dir/" 4463 SOURCE_MIRROR_URL ?= "file:///home/your-download-dir/"
4466 INHERIT += "own-mirrors" 4464 INHERIT += "own-mirrors"
4467 BB_NO_NETWORK = "1" 4465 BB_NO_NETWORK = "1"
4468 4466
4469 The :term:`SOURCE_MIRROR_URL` and ``own-mirror`` 4467 The :term:`SOURCE_MIRROR_URL` and :ref:`own-mirrors <ref-classes-own-mirrors>`
4470 class set up the system to use the downloads directory as your "own 4468 class set up the system to use the downloads directory as your "own
4471 mirror". Using the :term:`BB_NO_NETWORK` variable makes sure that 4469 mirror". Using the :term:`BB_NO_NETWORK` variable makes sure that
4472 BitBake's fetching process in step 3 stays local, which means files 4470 BitBake's fetching process in step 3 stays local, which means files
@@ -4751,7 +4749,8 @@ done using the
4751Eventually, all recipes will be covered and this list will not be 4749Eventually, all recipes will be covered and this list will not be
4752needed. 4750needed.
4753 4751
4754For the most part, the Multilib class extension works automatically to 4752For the most part, the :ref:`Multilib <ref-classes-multilib*>`
4753class extension works automatically to
4755extend the package name from ``${PN}`` to ``${MLPREFIX}${PN}``, where 4754extend the package name from ``${PN}`` to ``${MLPREFIX}${PN}``, where
4756:term:`MLPREFIX` is the particular multilib (e.g. "lib32-" or "lib64-"). 4755:term:`MLPREFIX` is the particular multilib (e.g. "lib32-" or "lib64-").
4757Standard variables such as 4756Standard variables such as
@@ -4763,8 +4762,7 @@ Standard variables such as
4763:term:`PACKAGES_DYNAMIC` are 4762:term:`PACKAGES_DYNAMIC` are
4764automatically extended by the system. If you are extending any manual 4763automatically extended by the system. If you are extending any manual
4765code in the recipe, you can use the ``${MLPREFIX}`` variable to ensure 4764code in the recipe, you can use the ``${MLPREFIX}`` variable to ensure
4766those names are extended correctly. This automatic extension code 4765those names are extended correctly.
4767resides in ``multilib.bbclass``.
4768 4766
4769Using Multilib 4767Using Multilib
4770~~~~~~~~~~~~~~ 4768~~~~~~~~~~~~~~
@@ -10993,7 +10991,7 @@ accidental release of proprietary software. The Yocto Project provides
10993an :ref:`archiver <ref-classes-archiver>` class to 10991an :ref:`archiver <ref-classes-archiver>` class to
10994help avoid some of these concerns. 10992help avoid some of these concerns.
10995 10993
10996Before you employ :term:`DL_DIR` or the ``archiver`` class, you need to 10994Before you employ :term:`DL_DIR` or the :ref:`archiver <ref-classes-archiver>` class, you need to
10997decide how you choose to provide source. The source ``archiver`` class 10995decide how you choose to provide source. The source ``archiver`` class
10998can generate tarballs and SRPMs and can create them with various levels 10996can generate tarballs and SRPMs and can create them with various levels
10999of compliance in mind. 10997of compliance in mind.