mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 21:09:03 +02:00
manuals: simplify references to classes
Now that .bbclass is removed from class section titles. We can now have, for example, :ref:`ref-classes-insane` instead of :ref:`insane <ref-classes-insane>`. Then, when necessary, rework paragraphs so that they have lines of even length, not exceeding 80 characters. (From yocto-docs rev: e76190e3be78c1e483bec0469f1e437dbf8f3791) Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com> Suggested-by: Quentin Schulz <foss+yocto@0leil.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
ae280972ff
commit
8b1909aa6f
|
@ -1365,7 +1365,7 @@ Project Reference Manual.
|
||||||
|
|
||||||
- :term:`IMAGE_INSTALL`:
|
- :term:`IMAGE_INSTALL`:
|
||||||
Specifies packages to install into an image through the
|
Specifies packages to install into an image through the
|
||||||
:ref:`image <ref-classes-image>` class. Recipes
|
:ref:`ref-classes-image` class. Recipes
|
||||||
use the :term:`IMAGE_INSTALL` variable.
|
use the :term:`IMAGE_INSTALL` variable.
|
||||||
|
|
||||||
- ``do_image_wic[depends]``: A task that is constructed during the
|
- ``do_image_wic[depends]``: A task that is constructed during the
|
||||||
|
|
|
@ -14,13 +14,11 @@ has already been built when the software is building, the software will
|
||||||
link to the built library and that library will be pulled into your
|
link to the built library and that library will be pulled into your
|
||||||
image along with the new software even if you did not want the library.
|
image along with the new software even if you did not want the library.
|
||||||
|
|
||||||
The :ref:`buildhistory <ref-classes-buildhistory>`
|
The :ref:`ref-classes-buildhistory` class helps you maintain the quality of
|
||||||
class helps you maintain the quality of your build output. You
|
your build output. You can use the class to highlight unexpected and possibly
|
||||||
can use the class to highlight unexpected and possibly unwanted changes
|
unwanted changes in the build output. When you enable build history, it records
|
||||||
in the build output. When you enable build history, it records
|
information about the contents of each package and image and then commits that
|
||||||
information about the contents of each package and image and then
|
information to a local Git repository where you can examine the information.
|
||||||
commits that information to a local Git repository where you can examine
|
|
||||||
the information.
|
|
||||||
|
|
||||||
The remainder of this section describes the following:
|
The remainder of this section describes the following:
|
||||||
|
|
||||||
|
|
|
@ -295,8 +295,8 @@ Follow these steps to create an :term:`Initramfs` image:
|
||||||
recipe, you should use :term:`PACKAGE_INSTALL` rather than
|
recipe, you should use :term:`PACKAGE_INSTALL` rather than
|
||||||
:term:`IMAGE_INSTALL`. :term:`PACKAGE_INSTALL` gives more direct control of
|
:term:`IMAGE_INSTALL`. :term:`PACKAGE_INSTALL` gives more direct control of
|
||||||
what is added to the image as compared to the defaults you might not
|
what is added to the image as compared to the defaults you might not
|
||||||
necessarily want that are set by the :ref:`image <ref-classes-image>`
|
necessarily want that are set by the :ref:`ref-classes-image`
|
||||||
or :ref:`core-image <ref-classes-core-image>` classes.
|
or :ref:`ref-classes-core-image` classes.
|
||||||
|
|
||||||
#. *Build the Kernel Image and the Initramfs Image:* Build your kernel
|
#. *Build the Kernel Image and the Initramfs Image:* Build your kernel
|
||||||
image using BitBake. Because the :term:`Initramfs` image recipe is a
|
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.
|
||||||
A recipe that just generates scripts can enable "all" architecture
|
A recipe that just generates scripts can enable "all" architecture
|
||||||
because there are no binaries to build. To specifically enable "all"
|
because there are no binaries to build. To specifically enable "all"
|
||||||
architecture, be sure your recipe inherits the
|
architecture, be sure your recipe inherits the
|
||||||
:ref:`allarch <ref-classes-allarch>` class.
|
:ref:`ref-classes-allarch` class.
|
||||||
This class is useful for "all" architectures because it configures
|
This class is useful for "all" architectures because it configures
|
||||||
many variables so packages can be used across multiple architectures.
|
many variables so packages can be used across multiple architectures.
|
||||||
|
|
||||||
|
@ -796,7 +796,7 @@ where the development occurs. You want the recipe's
|
||||||
the external directory and use it as is, not copy it.
|
the external directory and use it as is, not copy it.
|
||||||
|
|
||||||
To build from software that comes from an external source, all you need to do
|
To build from software that comes from an external source, all you need to do
|
||||||
is inherit the :ref:`externalsrc <ref-classes-externalsrc>` class and then set
|
is inherit the :ref:`ref-classes-externalsrc` class and then set
|
||||||
the :term:`EXTERNALSRC` variable to point to your external source code. Here
|
the :term:`EXTERNALSRC` variable to point to your external source code. Here
|
||||||
are the statements to put in your ``local.conf`` file::
|
are the statements to put in your ``local.conf`` file::
|
||||||
|
|
||||||
|
@ -812,8 +812,7 @@ This next example shows how to accomplish the same thing by setting
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
In order for these settings to take effect, you must globally or
|
In order for these settings to take effect, you must globally or
|
||||||
locally inherit the :ref:`externalsrc <ref-classes-externalsrc>`
|
locally inherit the :ref:`ref-classes-externalsrc` class.
|
||||||
class.
|
|
||||||
|
|
||||||
By default, :ref:`ref-classes-externalsrc` builds the source code in a
|
By default, :ref:`ref-classes-externalsrc` builds the source code in a
|
||||||
directory separate from the external source directory as specified by
|
directory separate from the external source directory as specified by
|
||||||
|
@ -881,14 +880,14 @@ directory:
|
||||||
|
|
||||||
#. *Using Local Files Only:* Inside your ``local.conf`` file, add the
|
#. *Using Local Files Only:* Inside your ``local.conf`` file, add the
|
||||||
:term:`SOURCE_MIRROR_URL` variable, inherit the
|
:term:`SOURCE_MIRROR_URL` variable, inherit the
|
||||||
:ref:`own-mirrors <ref-classes-own-mirrors>` class, and use the
|
:ref:`ref-classes-own-mirrors` class, and use the
|
||||||
:term:`BB_NO_NETWORK` variable to your ``local.conf``::
|
:term:`BB_NO_NETWORK` variable to your ``local.conf``::
|
||||||
|
|
||||||
SOURCE_MIRROR_URL ?= "file:///home/your-download-dir/"
|
SOURCE_MIRROR_URL ?= "file:///home/your-download-dir/"
|
||||||
INHERIT += "own-mirrors"
|
INHERIT += "own-mirrors"
|
||||||
BB_NO_NETWORK = "1"
|
BB_NO_NETWORK = "1"
|
||||||
|
|
||||||
The :term:`SOURCE_MIRROR_URL` and :ref:`own-mirrors <ref-classes-own-mirrors>`
|
The :term:`SOURCE_MIRROR_URL` and :ref:`ref-classes-own-mirrors`
|
||||||
class set up the system to use the downloads directory as your "own
|
class set up the system to use the downloads directory as your "own
|
||||||
mirror". Using the :term:`BB_NO_NETWORK` variable makes sure that
|
mirror". Using the :term:`BB_NO_NETWORK` variable makes sure that
|
||||||
BitBake's fetching process in step 3 stays local, which means files
|
BitBake's fetching process in step 3 stays local, which means files
|
||||||
|
|
|
@ -153,7 +153,7 @@ In addition to variable values, the output of the ``bitbake -e`` and
|
||||||
classes included globally, recursively listing the files they include
|
classes included globally, recursively listing the files they include
|
||||||
or inherit in turn. Much of the behavior of the OpenEmbedded build
|
or inherit in turn. Much of the behavior of the OpenEmbedded build
|
||||||
system (including the behavior of the :ref:`ref-manual/tasks:normal recipe build tasks`) is
|
system (including the behavior of the :ref:`ref-manual/tasks:normal recipe build tasks`) is
|
||||||
implemented in the :ref:`base <ref-classes-base>` class and the
|
implemented in the :ref:`ref-classes-base` class and the
|
||||||
classes it inherits, rather than being built into BitBake itself.
|
classes it inherits, rather than being built into BitBake itself.
|
||||||
|
|
||||||
- After the variable values, all functions appear in the output. For
|
- 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.
|
||||||
which contains the files stored in that package.
|
which contains the files stored in that package.
|
||||||
|
|
||||||
If you want to inspect the ``${WORKDIR}/packages-split``
|
If you want to inspect the ``${WORKDIR}/packages-split``
|
||||||
directory, make sure that
|
directory, make sure that :ref:`ref-classes-rm-work` is not
|
||||||
:ref:`rm_work <ref-classes-rm-work>` is not
|
|
||||||
enabled when you build the recipe.
|
enabled when you build the recipe.
|
||||||
|
|
||||||
- ``oe-pkgdata-util find-path path ...``: Lists the names of
|
- ``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
|
||||||
|
|
||||||
The same logging functions are also available in shell functions, under
|
The same logging functions are also available in shell functions, under
|
||||||
the names ``bbplain``, ``bbnote``, ``bbdebug``, ``bbwarn``, ``bberror``,
|
the names ``bbplain``, ``bbnote``, ``bbdebug``, ``bbwarn``, ``bberror``,
|
||||||
and ``bbfatal``. The
|
and ``bbfatal``. The :ref:`ref-classes-logging` class
|
||||||
:ref:`logging <ref-classes-logging>` class
|
|
||||||
implements these functions. See that class in the ``meta/classes``
|
implements these functions. See that class in the ``meta/classes``
|
||||||
folder of the :term:`Source Directory` for information.
|
folder of the :term:`Source Directory` for information.
|
||||||
|
|
||||||
|
|
|
@ -14,8 +14,7 @@ the :term:`Build Directory`::
|
||||||
|
|
||||||
Adding this statement deletes the work directory used for
|
Adding this statement deletes the work directory used for
|
||||||
building a recipe once the recipe is built. For more information on
|
building a recipe once the recipe is built. For more information on
|
||||||
"rm_work", see the
|
"rm_work", see the :ref:`ref-classes-rm-work` class in the
|
||||||
:ref:`rm_work <ref-classes-rm-work>` class in the
|
|
||||||
Yocto Project Reference Manual.
|
Yocto Project Reference Manual.
|
||||||
|
|
||||||
Purging Duplicate Shared State Cache Files
|
Purging Duplicate Shared State Cache Files
|
||||||
|
|
|
@ -27,9 +27,9 @@ Enabling and Using the Tool
|
||||||
===========================
|
===========================
|
||||||
|
|
||||||
By default, the error reporting tool is disabled. You can enable it by
|
By default, the error reporting tool is disabled. You can enable it by
|
||||||
inheriting the :ref:`report-error <ref-classes-report-error>`
|
inheriting the :ref:`ref-classes-report-error` class by adding the
|
||||||
class by adding the following statement to the end of your
|
following statement to the end of your ``local.conf`` file in your
|
||||||
``local.conf`` file in your :term:`Build Directory`::
|
:term:`Build Directory`::
|
||||||
|
|
||||||
INHERIT += "report-error"
|
INHERIT += "report-error"
|
||||||
|
|
||||||
|
|
|
@ -39,9 +39,7 @@ Enabling the Generation of Introspection Data
|
||||||
Enabling the generation of introspection data (GIR files) in your
|
Enabling the generation of introspection data (GIR files) in your
|
||||||
library package involves the following:
|
library package involves the following:
|
||||||
|
|
||||||
#. Inherit the
|
#. Inherit the :ref:`ref-classes-gobject-introspection` class.
|
||||||
:ref:`gobject-introspection <ref-classes-gobject-introspection>`
|
|
||||||
class.
|
|
||||||
|
|
||||||
#. Make sure introspection is not disabled anywhere in the recipe or
|
#. Make sure introspection is not disabled anywhere in the recipe or
|
||||||
from anything the recipe includes. Also, make sure that
|
from anything the recipe includes. Also, make sure that
|
||||||
|
|
|
@ -325,13 +325,12 @@ and not just the source used in the released image. It will include
|
||||||
toolchain source, and other artifacts, which you would not generally
|
toolchain source, and other artifacts, which you would not generally
|
||||||
release. However, the more serious issue for most companies is
|
release. However, the more serious issue for most companies is
|
||||||
accidental release of proprietary software. The Yocto Project provides
|
accidental release of proprietary software. The Yocto Project provides
|
||||||
an :ref:`archiver <ref-classes-archiver>` class to
|
an :ref:`ref-classes-archiver` class to help avoid some of these concerns.
|
||||||
help avoid some of these concerns.
|
|
||||||
|
|
||||||
Before you employ :term:`DL_DIR` or the :ref:`archiver <ref-classes-archiver>` class, you need to
|
Before you employ :term:`DL_DIR` or the :ref:`ref-classes-archiver` class, you
|
||||||
decide how you choose to provide source. The source :ref:`archiver <ref-classes-archiver>` class
|
need to decide how you choose to provide source. The source
|
||||||
can generate tarballs and SRPMs and can create them with various levels
|
:ref:`ref-classes-archiver` class can generate tarballs and SRPMs and can
|
||||||
of compliance in mind.
|
create them with various levels of compliance in mind.
|
||||||
|
|
||||||
One way of doing this (but certainly not the only way) is to release
|
One way of doing this (but certainly not the only way) is to release
|
||||||
just the source as a tarball. You can do this by adding the following to
|
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.
|
||||||
adds a separate package and an upgrade path for adding licenses to an
|
adds a separate package and an upgrade path for adding licenses to an
|
||||||
image.
|
image.
|
||||||
|
|
||||||
As the source :ref:`archiver <ref-classes-archiver>` class has already archived the original
|
As the source :ref:`ref-classes-archiver` class has already archived the
|
||||||
unmodified source that contains the license files, you would have
|
original unmodified source that contains the license files, you would have
|
||||||
already met the requirements for inclusion of the license information
|
already met the requirements for inclusion of the license information
|
||||||
with source as defined by the GPL and other open source licenses.
|
with source as defined by the GPL and other open source licenses.
|
||||||
|
|
||||||
|
@ -488,8 +487,8 @@ mechanisms as well as explicitly included in the image recipe with
|
||||||
:term:`IMAGE_INSTALL`, and depends on a static linked library recipe B
|
:term:`IMAGE_INSTALL`, and depends on a static linked library recipe B
|
||||||
(``DEPENDS += "B"``), package B will neither appear in the generated license
|
(``DEPENDS += "B"``), package B will neither appear in the generated license
|
||||||
manifest nor in the generated source tarballs. This occurs as the
|
manifest nor in the generated source tarballs. This occurs as the
|
||||||
:ref:`license <ref-classes-license>` and :ref:`archiver <ref-classes-archiver>`
|
:ref:`ref-classes-license` and :ref:`ref-classes-archiver` classes assume that
|
||||||
classes assume that only packages included via :term:`RDEPENDS` or :term:`RRECOMMENDS`
|
only packages included via :term:`RDEPENDS` or :term:`RRECOMMENDS`
|
||||||
end up in the image.
|
end up in the image.
|
||||||
|
|
||||||
As a result, potential obligations regarding license compliance for package B
|
As a result, potential obligations regarding license compliance for package B
|
||||||
|
|
|
@ -565,7 +565,7 @@ your software is built:
|
||||||
need to modify the configuration.
|
need to modify the configuration.
|
||||||
|
|
||||||
When using Autotools, your recipe needs to inherit the
|
When using Autotools, your recipe needs to inherit the
|
||||||
:ref:`autotools <ref-classes-autotools>` class and it does not have to
|
:ref:`ref-classes-autotools` class and it does not have to
|
||||||
contain a :ref:`ref-tasks-configure` task. However, you might still want to
|
contain a :ref:`ref-tasks-configure` task. However, you might still want to
|
||||||
make some adjustments. For example, you can set :term:`EXTRA_OECONF` or
|
make some adjustments. For example, you can set :term:`EXTRA_OECONF` or
|
||||||
:term:`PACKAGECONFIG_CONFARGS` to pass any needed configure options that
|
:term:`PACKAGECONFIG_CONFARGS` to pass any needed configure options that
|
||||||
|
@ -576,7 +576,7 @@ your software is built:
|
||||||
need to modify the configuration.
|
need to modify the configuration.
|
||||||
|
|
||||||
When you use CMake, your recipe needs to inherit the
|
When you use CMake, your recipe needs to inherit the
|
||||||
:ref:`cmake <ref-classes-cmake>` class and it does not have to contain a
|
:ref:`ref-classes-cmake` class and it does not have to contain a
|
||||||
:ref:`ref-tasks-configure` task. You can make some adjustments by setting
|
:ref:`ref-tasks-configure` task. You can make some adjustments by setting
|
||||||
:term:`EXTRA_OECMAKE` to pass any needed configure options that are
|
:term:`EXTRA_OECMAKE` to pass any needed configure options that are
|
||||||
specific to the recipe.
|
specific to the recipe.
|
||||||
|
@ -712,7 +712,7 @@ Here are some common issues that cause failures.
|
||||||
":ref:`dev-manual/debugging:debugging parallel make races`" section.
|
":ref:`dev-manual/debugging:debugging parallel make races`" section.
|
||||||
|
|
||||||
- *Improper host path usage:* This failure applies to recipes building
|
- *Improper host path usage:* This failure applies to recipes building
|
||||||
for the target or ":ref:`nativesdk <ref-classes-nativesdk>`" only. The
|
for the target or ":ref:`ref-classes-nativesdk`" only. The
|
||||||
failure occurs when the compilation process uses improper headers,
|
failure occurs when the compilation process uses improper headers,
|
||||||
libraries, or other files from the host system when cross-compiling for
|
libraries, or other files from the host system when cross-compiling for
|
||||||
the target.
|
the target.
|
||||||
|
@ -807,14 +807,13 @@ installed correctly.
|
||||||
re-execute :ref:`ref-tasks-install` if needed.
|
re-execute :ref:`ref-tasks-install` if needed.
|
||||||
|
|
||||||
- ``oe_runmake install``, which can be run directly or can be run
|
- ``oe_runmake install``, which can be run directly or can be run
|
||||||
indirectly by the
|
indirectly by the :ref:`ref-classes-autotools` and
|
||||||
:ref:`autotools <ref-classes-autotools>` and
|
:ref:`ref-classes-cmake` classes, runs ``make install`` in parallel.
|
||||||
:ref:`cmake <ref-classes-cmake>` classes,
|
Sometimes, a Makefile can have missing dependencies between targets that
|
||||||
runs ``make install`` in parallel. Sometimes, a Makefile can have
|
can result in race conditions. If you experience intermittent failures
|
||||||
missing dependencies between targets that can result in race
|
during :ref:`ref-tasks-install`, you might be able to work around them by
|
||||||
conditions. If you experience intermittent failures during
|
disabling parallel Makefile installs by adding the following to the
|
||||||
:ref:`ref-tasks-install`, you might be able to work around them by disabling
|
recipe::
|
||||||
parallel Makefile installs by adding the following to the recipe::
|
|
||||||
|
|
||||||
PARALLEL_MAKEINST = ""
|
PARALLEL_MAKEINST = ""
|
||||||
|
|
||||||
|
@ -854,7 +853,7 @@ different ways:
|
||||||
shutdown of all other programs.
|
shutdown of all other programs.
|
||||||
|
|
||||||
To enable a service using SysVinit, your recipe needs to inherit the
|
To enable a service using SysVinit, your recipe needs to inherit the
|
||||||
:ref:`update-rc.d <ref-classes-update-rc.d>` class. The class helps
|
:ref:`ref-classes-update-rc.d` class. The class helps
|
||||||
facilitate safely installing the package on the target.
|
facilitate safely installing the package on the target.
|
||||||
|
|
||||||
You will need to set the
|
You will need to set the
|
||||||
|
@ -870,7 +869,7 @@ different ways:
|
||||||
https://freedesktop.org/wiki/Software/systemd/.
|
https://freedesktop.org/wiki/Software/systemd/.
|
||||||
|
|
||||||
To enable a service using systemd, your recipe needs to inherit the
|
To enable a service using systemd, your recipe needs to inherit the
|
||||||
:ref:`systemd <ref-classes-systemd>` class. See the ``systemd.bbclass`` file
|
:ref:`ref-classes-systemd` class. See the ``systemd.bbclass`` file
|
||||||
located in your :term:`Source Directory` section for more information.
|
located in your :term:`Source Directory` section for more information.
|
||||||
|
|
||||||
Packaging
|
Packaging
|
||||||
|
@ -886,14 +885,12 @@ take. The following list describes the process:
|
||||||
other logical components that should be split out. The :ref:`ref-tasks-package`
|
other logical components that should be split out. The :ref:`ref-tasks-package`
|
||||||
task ensures that files are split up and packaged correctly.
|
task ensures that files are split up and packaged correctly.
|
||||||
|
|
||||||
- *Running QA Checks*: The
|
- *Running QA Checks*: The :ref:`ref-classes-insane` class adds a
|
||||||
:ref:`insane <ref-classes-insane>` class adds a
|
|
||||||
step to the package generation process so that output quality
|
step to the package generation process so that output quality
|
||||||
assurance checks are generated by the OpenEmbedded build system. This
|
assurance checks are generated by the OpenEmbedded build system. This
|
||||||
step performs a range of checks to be sure the build's output is free
|
step performs a range of checks to be sure the build's output is free
|
||||||
of common problems that show up during runtime. For information on
|
of common problems that show up during runtime. For information on
|
||||||
these checks, see the
|
these checks, see the :ref:`ref-classes-insane` class and
|
||||||
:ref:`insane <ref-classes-insane>` class and
|
|
||||||
the ":ref:`ref-manual/qa-checks:qa error and warning messages`"
|
the ":ref:`ref-manual/qa-checks:qa error and warning messages`"
|
||||||
chapter in the Yocto Project Reference Manual.
|
chapter in the Yocto Project Reference Manual.
|
||||||
|
|
||||||
|
@ -934,8 +931,7 @@ take. The following list describes the process:
|
||||||
On the other hand, if the recipe produces packages that do not
|
On the other hand, if the recipe produces packages that do not
|
||||||
contain anything specific to the target machine or architecture at
|
contain anything specific to the target machine or architecture at
|
||||||
all (e.g. recipes that simply package script files or configuration
|
all (e.g. recipes that simply package script files or configuration
|
||||||
files), you should use the
|
files), you should use the :ref:`ref-classes-allarch` class to
|
||||||
:ref:`allarch <ref-classes-allarch>` class to
|
|
||||||
do this for you by adding this to your recipe::
|
do this for you by adding this to your recipe::
|
||||||
|
|
||||||
inherit allarch
|
inherit allarch
|
||||||
|
@ -1002,18 +998,16 @@ same functionality, you can use a virtual provider (i.e. ``virtual/*``)
|
||||||
as a placeholder for the actual provider. The actual provider is
|
as a placeholder for the actual provider. The actual provider is
|
||||||
determined at build-time.
|
determined at build-time.
|
||||||
|
|
||||||
A common scenario where a virtual provider is used would be for the
|
A common scenario where a virtual provider is used would be for the kernel
|
||||||
kernel recipe. Suppose you have three kernel recipes whose
|
recipe. Suppose you have three kernel recipes whose :term:`PN` values map to
|
||||||
:term:`PN` values map to ``kernel-big``,
|
``kernel-big``, ``kernel-mid``, and ``kernel-small``. Furthermore, each of
|
||||||
``kernel-mid``, and ``kernel-small``. Furthermore, each of these recipes
|
these recipes in some way uses a :term:`PROVIDES` statement that essentially
|
||||||
in some way uses a :term:`PROVIDES`
|
identifies itself as being able to provide ``virtual/kernel``. Here is one way
|
||||||
statement that essentially identifies itself as being able to provide
|
through the :ref:`ref-classes-kernel` class::
|
||||||
``virtual/kernel``. Here is one way through the
|
|
||||||
:ref:`kernel <ref-classes-kernel>` class::
|
|
||||||
|
|
||||||
PROVIDES += "virtual/kernel"
|
PROVIDES += "virtual/kernel"
|
||||||
|
|
||||||
Any recipe that inherits the :ref:`kernel <ref-classes-kernel>` class is
|
Any recipe that inherits the :ref:`ref-classes-kernel` class is
|
||||||
going to utilize a :term:`PROVIDES` statement that identifies that recipe as
|
going to utilize a :term:`PROVIDES` statement that identifies that recipe as
|
||||||
being able to provide the ``virtual/kernel`` item.
|
being able to provide the ``virtual/kernel`` item.
|
||||||
|
|
||||||
|
@ -1223,7 +1217,7 @@ Autotooled Package
|
||||||
|
|
||||||
Applications that use Autotools such as ``autoconf`` and ``automake``
|
Applications that use Autotools such as ``autoconf`` and ``automake``
|
||||||
require a recipe that has a source archive listed in :term:`SRC_URI` and
|
require a recipe that has a source archive listed in :term:`SRC_URI` and
|
||||||
also inherit the :ref:`autotools <ref-classes-autotools>` class,
|
also inherit the :ref:`ref-classes-autotools` class,
|
||||||
which contains the definitions of all the steps needed to build an
|
which contains the definitions of all the steps needed to build an
|
||||||
Autotool-based application. The result of the build is automatically
|
Autotool-based application. The result of the build is automatically
|
||||||
packaged. And, if the application uses NLS for localization, packages
|
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,
|
||||||
sometimes you have no choice.
|
sometimes you have no choice.
|
||||||
|
|
||||||
The easiest solution is to create a recipe that uses the
|
The easiest solution is to create a recipe that uses the
|
||||||
:ref:`bin_package <ref-classes-bin-package>` class
|
:ref:`ref-classes-bin-package` class and to be sure that you are using default
|
||||||
and to be sure that you are using default locations for build artifacts.
|
locations for build artifacts. In most cases, the
|
||||||
In most cases, the :ref:`bin_package <ref-classes-bin-package>` class handles "skipping" the
|
:ref:`ref-classes-bin-package` class handles "skipping" the configure and
|
||||||
configure and compile steps as well as sets things up to grab packages
|
compile steps as well as sets things up to grab packages from the appropriate
|
||||||
from the appropriate area. In particular, this class sets ``noexec`` on
|
area. In particular, this class sets ``noexec`` on both the
|
||||||
both the :ref:`ref-tasks-configure`
|
:ref:`ref-tasks-configure` and :ref:`ref-tasks-compile` tasks, sets
|
||||||
and :ref:`ref-tasks-compile` tasks,
|
``FILES:${PN}`` to "/" so that it picks up all files, and sets up a
|
||||||
sets ``FILES:${PN}`` to "/" so that it picks up all files, and sets up a
|
:ref:`ref-tasks-install` task, which effectively copies all files from ``${S}``
|
||||||
:ref:`ref-tasks-install` task, which
|
to ``${D}``. The :ref:`ref-classes-bin-package` class works well when the files
|
||||||
effectively copies all files from ``${S}`` to ``${D}``. The
|
extracted into ``${S}`` are already laid out in the way they should be laid out
|
||||||
:ref:`bin_package <ref-classes-bin-package>` class works well when the files extracted into ``${S}``
|
on the target. For more information on these variables, see the :term:`FILES`,
|
||||||
are already laid out in the way they should be laid out on the target.
|
:term:`PN`, :term:`S`, and :term:`D` variables in the Yocto Project Reference
|
||||||
For more information on these variables, see the
|
Manual's variable glossary.
|
||||||
:term:`FILES`,
|
|
||||||
:term:`PN`,
|
|
||||||
:term:`S`, and
|
|
||||||
:term:`D` variables in the Yocto Project
|
|
||||||
Reference Manual's variable glossary.
|
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
|
@ -1388,7 +1377,7 @@ Reference Manual's variable glossary.
|
||||||
section in the Yocto Project Overview and Concepts Manual for more
|
section in the Yocto Project Overview and Concepts Manual for more
|
||||||
information.
|
information.
|
||||||
|
|
||||||
If you cannot use the :ref:`bin_package <ref-classes-bin-package>` class, you need to be sure you are
|
If you cannot use the :ref:`ref-classes-bin-package` class, you need to be sure you are
|
||||||
doing the following:
|
doing the following:
|
||||||
|
|
||||||
- Create a recipe where the
|
- Create a recipe where the
|
||||||
|
|
|
@ -643,8 +643,7 @@ Lighttpd, or Nginx), take the appropriate steps to do so.
|
||||||
From within the :term:`Build Directory` where you have built an image based on
|
From within the :term:`Build Directory` where you have built an image based on
|
||||||
your packaging choice (i.e. the :term:`PACKAGE_CLASSES` setting), simply start
|
your packaging choice (i.e. the :term:`PACKAGE_CLASSES` setting), simply start
|
||||||
the server. The following example assumes a :term:`Build Directory` of ``poky/build``
|
the server. The following example assumes a :term:`Build Directory` of ``poky/build``
|
||||||
and a :term:`PACKAGE_CLASSES` setting of
|
and a :term:`PACKAGE_CLASSES` setting of ":ref:`ref-classes-package_rpm`"::
|
||||||
":ref:`package_rpm <ref-classes-package_rpm>`"::
|
|
||||||
|
|
||||||
$ cd poky/build/tmp/deploy/rpm
|
$ cd poky/build/tmp/deploy/rpm
|
||||||
$ python3 -m http.server
|
$ python3 -m http.server
|
||||||
|
@ -909,8 +908,8 @@ see the :yocto_wiki:`Ptest </Ptest>` wiki page.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
A recipe is "ptest-enabled" if it inherits the
|
A recipe is "ptest-enabled" if it inherits the :ref:`ref-classes-ptest`
|
||||||
:ref:`ptest <ref-classes-ptest>` class.
|
class.
|
||||||
|
|
||||||
Adding ptest to Your Build
|
Adding ptest to Your Build
|
||||||
--------------------------
|
--------------------------
|
||||||
|
@ -940,7 +939,7 @@ In order to enable a recipe to run installed ptests on target hardware,
|
||||||
you need to prepare the recipes that build the packages you want to
|
you need to prepare the recipes that build the packages you want to
|
||||||
test. Here is what you have to do for each recipe:
|
test. Here is what you have to do for each recipe:
|
||||||
|
|
||||||
- *Be sure the recipe inherits the* :ref:`ptest <ref-classes-ptest>` *class:*
|
- *Be sure the recipe inherits the* :ref:`ref-classes-ptest` *class:*
|
||||||
Include the following line in each recipe::
|
Include the following line in each recipe::
|
||||||
|
|
||||||
inherit ptest
|
inherit ptest
|
||||||
|
@ -991,7 +990,7 @@ test. Here is what you have to do for each recipe:
|
||||||
special configurations prior to compiling the test code, you must
|
special configurations prior to compiling the test code, you must
|
||||||
insert a ``do_configure_ptest`` function into the recipe.
|
insert a ``do_configure_ptest`` function into the recipe.
|
||||||
|
|
||||||
- *Install the test suite:* The :ref:`ptest <ref-classes-ptest>` class
|
- *Install the test suite:* The :ref:`ref-classes-ptest` class
|
||||||
automatically copies the file ``run-ptest`` to the target and then runs make
|
automatically copies the file ``run-ptest`` to the target and then runs make
|
||||||
``install-ptest`` to run the tests. If this is not enough, you need
|
``install-ptest`` to run the tests. If this is not enough, you need
|
||||||
to create a ``do_install_ptest`` function and make sure it gets
|
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:
|
||||||
sub-module's license is unavailable, the sub-module's name appears in
|
sub-module's license is unavailable, the sub-module's name appears in
|
||||||
the comments.
|
the comments.
|
||||||
|
|
||||||
- The ``inherit npm`` statement causes the
|
- The ``inherit npm`` statement causes the :ref:`ref-classes-npm` class to
|
||||||
:ref:`npm <ref-classes-npm>` class to package
|
package up all the modules.
|
||||||
up all the modules.
|
|
||||||
|
|
||||||
You can run the following command to build the ``cute-files`` package::
|
You can run the following command to build the ``cute-files`` package::
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,7 @@ form of a patch all using Quilt.
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
With regard to preserving changes to source files, if you clean a
|
With regard to preserving changes to source files, if you clean a
|
||||||
recipe or have :ref:`rm_work <ref-classes-rm-work>` enabled, the
|
recipe or have :ref:`ref-classes-rm-work` enabled, the
|
||||||
:ref:`devtool workflow <sdk-manual/extensible:using \`\`devtool\`\` in your sdk workflow>`
|
:ref:`devtool workflow <sdk-manual/extensible:using \`\`devtool\`\` in your sdk workflow>`
|
||||||
as described in the Yocto Project Application Development and the
|
as described in the Yocto Project Application Development and the
|
||||||
Extensible Software Development Kit (eSDK) manual is a safer
|
Extensible Software Development Kit (eSDK) manual is a safer
|
||||||
|
@ -61,7 +61,7 @@ Follow these general steps:
|
||||||
once you run the :ref:`ref-tasks-clean` or :ref:`ref-tasks-cleanall`
|
once you run the :ref:`ref-tasks-clean` or :ref:`ref-tasks-cleanall`
|
||||||
tasks using BitBake (i.e. ``bitbake -c clean package`` and
|
tasks using BitBake (i.e. ``bitbake -c clean package`` and
|
||||||
``bitbake -c cleanall package``). Modifications will also disappear if
|
``bitbake -c cleanall package``). Modifications will also disappear if
|
||||||
you use the :ref:`rm_work <ref-classes-rm-work>` feature as described in
|
you use the :ref:`ref-classes-rm-work` feature as described in
|
||||||
the ":ref:`dev-manual/disk-space:conserving disk space during builds`"
|
the ":ref:`dev-manual/disk-space:conserving disk space during builds`"
|
||||||
section.
|
section.
|
||||||
|
|
||||||
|
|
|
@ -76,7 +76,7 @@ from running during root filesystem creation:
|
||||||
native tools, which run on the host system, to accomplish the same
|
native tools, which run on the host system, to accomplish the same
|
||||||
tasks, or by alternatively running the processes under QEMU, which
|
tasks, or by alternatively running the processes under QEMU, which
|
||||||
has the ``qemu_run_binary`` function. For more information, see the
|
has the ``qemu_run_binary`` function. For more information, see the
|
||||||
:ref:`qemu <ref-classes-qemu>` class.
|
:ref:`ref-classes-qemu` class.
|
||||||
|
|
||||||
Areas With Write Access
|
Areas With Write Access
|
||||||
=======================
|
=======================
|
||||||
|
|
|
@ -332,8 +332,8 @@ You can start the tests automatically or manually:
|
||||||
bitbake core-image-sato
|
bitbake core-image-sato
|
||||||
|
|
||||||
- *Manually running tests:* To manually run the tests, first globally
|
- *Manually running tests:* To manually run the tests, first globally
|
||||||
inherit the :ref:`testimage <ref-classes-testimage>` class
|
inherit the :ref:`ref-classes-testimage` class by editing your
|
||||||
by editing your ``local.conf`` file::
|
``local.conf`` file::
|
||||||
|
|
||||||
INHERIT += "testimage"
|
INHERIT += "testimage"
|
||||||
|
|
||||||
|
|
|
@ -26,7 +26,7 @@ assessments, as all the components used in the Software Supply Chain are listed.
|
||||||
|
|
||||||
The OpenEmbedded build system doesn't generate such information by default.
|
The OpenEmbedded build system doesn't generate such information by default.
|
||||||
To make this happen, you must inherit the
|
To make this happen, you must inherit the
|
||||||
:ref:`create-spdx <ref-classes-create-spdx>` class from a configuration file::
|
:ref:`ref-classes-create-spdx` class from a configuration file::
|
||||||
|
|
||||||
INHERIT += "create-spdx"
|
INHERIT += "create-spdx"
|
||||||
|
|
||||||
|
@ -39,7 +39,7 @@ containing an index of JSON :term:`SPDX` files for individual recipes, together
|
||||||
with an ``IMAGE-MACHINE.spdx.tar.zst`` compressed archive containing all such
|
with an ``IMAGE-MACHINE.spdx.tar.zst`` compressed archive containing all such
|
||||||
files.
|
files.
|
||||||
|
|
||||||
The :ref:`create-spdx <ref-classes-create-spdx>` class offers options to include
|
The :ref:`ref-classes-create-spdx` class offers options to include
|
||||||
more information in the output :term:`SPDX` data, such as making the generated
|
more information in the output :term:`SPDX` data, such as making the generated
|
||||||
files more human readable (:term:`SPDX_PRETTY`), adding compressed archives of
|
files more human readable (:term:`SPDX_PRETTY`), adding compressed archives of
|
||||||
the files in the generated target packages (:term:`SPDX_ARCHIVE_PACKAGED`),
|
the files in the generated target packages (:term:`SPDX_ARCHIVE_PACKAGED`),
|
||||||
|
|
|
@ -128,11 +128,9 @@ system to make your images more secure:
|
||||||
service type users). When you set up passwords for multiple images or
|
service type users). When you set up passwords for multiple images or
|
||||||
users, you should not duplicate passwords.
|
users, you should not duplicate passwords.
|
||||||
|
|
||||||
To set up passwords, use the
|
To set up passwords, use the :ref:`ref-classes-extrausers` class, which
|
||||||
:ref:`extrausers <ref-classes-extrausers>`
|
is the preferred method. For an example on how to set up both root and
|
||||||
class, which is the preferred method. For an example on how to set up
|
user passwords, see the ":ref:`ref-classes-extrausers`" section.
|
||||||
both root and user passwords, see the
|
|
||||||
":ref:`ref-classes-extrausers`" section.
|
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
|
|
|
@ -61,8 +61,7 @@ Following are additional factors that can affect build speed:
|
||||||
file system on the principle that if there was a significant failure,
|
file system on the principle that if there was a significant failure,
|
||||||
the :term:`Build Directory` contents could easily be rebuilt.
|
the :term:`Build Directory` contents could easily be rebuilt.
|
||||||
|
|
||||||
- Inheriting the
|
- Inheriting the :ref:`ref-classes-rm-work` class:
|
||||||
:ref:`rm_work <ref-classes-rm-work>` class:
|
|
||||||
Inheriting this class has shown to speed up builds due to
|
Inheriting this class has shown to speed up builds due to
|
||||||
significantly lower amounts of data stored in the data cache as well
|
significantly lower amounts of data stored in the data cache as well
|
||||||
as on disk. Inheriting this class also makes cleanup of
|
as on disk. Inheriting this class also makes cleanup of
|
||||||
|
|
|
@ -113,8 +113,7 @@ The following steps describe how to set up the AUH utility:
|
||||||
``upgrade-helper/work/recipe/buildhistory-diff.txt`` file found in
|
``upgrade-helper/work/recipe/buildhistory-diff.txt`` file found in
|
||||||
your :term:`Build Directory`.
|
your :term:`Build Directory`.
|
||||||
|
|
||||||
- If you want to enable testing through the
|
- If you want to enable testing through the :ref:`ref-classes-testimage`
|
||||||
:ref:`testimage <ref-classes-testimage>`
|
|
||||||
class, which is optional, you need to have the following set in
|
class, which is optional, you need to have the following set in
|
||||||
your ``conf/local.conf`` file::
|
your ``conf/local.conf`` file::
|
||||||
|
|
||||||
|
|
|
@ -27,8 +27,9 @@ patches to fix them, see ":ref:`dev-manual/changes:submitting a change to the yo
|
||||||
Vulnerability check at build time
|
Vulnerability check at build time
|
||||||
=================================
|
=================================
|
||||||
|
|
||||||
To enable a check for CVE security vulnerabilities using :ref:`cve-check <ref-classes-cve-check>` in the specific image
|
To enable a check for CVE security vulnerabilities using
|
||||||
or target you are building, add the following setting to your configuration::
|
:ref:`ref-classes-cve-check` in the specific image or target you are building,
|
||||||
|
add the following setting to your configuration::
|
||||||
|
|
||||||
INHERIT += "cve-check"
|
INHERIT += "cve-check"
|
||||||
|
|
||||||
|
@ -100,7 +101,7 @@ It is also possible to check the CVE status of individual packages as follows::
|
||||||
Fixing CVE product name and version mappings
|
Fixing CVE product name and version mappings
|
||||||
============================================
|
============================================
|
||||||
|
|
||||||
By default, :ref:`cve-check <ref-classes-cve-check>` uses the recipe name :term:`BPN` as CVE
|
By default, :ref:`ref-classes-cve-check` uses the recipe name :term:`BPN` as CVE
|
||||||
product name when querying the CVE database. If this mapping contains false positives, e.g.
|
product name when querying the CVE database. If this mapping contains false positives, e.g.
|
||||||
some reported CVEs are not for the software component in question, or false negatives like
|
some reported CVEs are not for the software component in question, or false negatives like
|
||||||
some CVEs are not found to impact the recipe when they should, then the problems can be
|
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.
|
||||||
Implementation details
|
Implementation details
|
||||||
======================
|
======================
|
||||||
|
|
||||||
Here's what the :ref:`cve-check <ref-classes-cve-check>` class does to
|
Here's what the :ref:`ref-classes-cve-check` class does to find unpatched CVE IDs.
|
||||||
find unpatched CVE IDs.
|
|
||||||
|
|
||||||
First the code goes through each patch file provided by a recipe. If a valid CVE ID
|
First the code goes through each patch file provided by a recipe. If a valid CVE ID
|
||||||
is found in the name of the file, the corresponding CVE is considered as patched.
|
is found in the name of the file, the corresponding CVE is considered as patched.
|
||||||
|
|
|
@ -59,8 +59,7 @@ this information is required to use Wic, you might find it interesting.
|
||||||
|
|
||||||
- Wic is a completely independent standalone utility that initially
|
- Wic is a completely independent standalone utility that initially
|
||||||
provides easier-to-use and more flexible replacements for an existing
|
provides easier-to-use and more flexible replacements for an existing
|
||||||
functionality in OE-Core's
|
functionality in OE-Core's :ref:`ref-classes-image-live`
|
||||||
:ref:`image-live <ref-classes-image-live>`
|
|
||||||
class. The difference between Wic and those examples is that with Wic
|
class. The difference between Wic and those examples is that with Wic
|
||||||
the functionality of those scripts is implemented by a
|
the functionality of those scripts is implemented by a
|
||||||
general-purpose partitioning language, which is based on Redhat
|
general-purpose partitioning language, which is based on Redhat
|
||||||
|
|
|
@ -1685,12 +1685,10 @@ looks much like the one provided with the ``hello-mod`` template::
|
||||||
...
|
...
|
||||||
|
|
||||||
The important point to note here is the :term:`KERNEL_SRC` variable. The
|
The important point to note here is the :term:`KERNEL_SRC` variable. The
|
||||||
:ref:`module <ref-classes-module>` class sets this variable and the
|
:ref:`ref-classes-module` class sets this variable and the :term:`KERNEL_PATH`
|
||||||
:term:`KERNEL_PATH` variable to
|
variable to ``${STAGING_KERNEL_DIR}`` with the necessary Linux kernel build
|
||||||
``${STAGING_KERNEL_DIR}`` with the necessary Linux kernel build
|
information to build modules. If your module ``Makefile`` uses a different
|
||||||
information to build modules. If your module ``Makefile`` uses a
|
variable, you might want to override the :ref:`ref-tasks-compile` step, or
|
||||||
different variable, you might want to override the
|
|
||||||
:ref:`ref-tasks-compile` step, or
|
|
||||||
create a patch to the ``Makefile`` to work with the more typical
|
create a patch to the ``Makefile`` to work with the more typical
|
||||||
:term:`KERNEL_SRC` or :term:`KERNEL_PATH` variables.
|
:term:`KERNEL_SRC` or :term:`KERNEL_PATH` variables.
|
||||||
|
|
||||||
|
|
|
@ -91,11 +91,11 @@ consistency.
|
||||||
nativesdk
|
nativesdk
|
||||||
~~~~~~~~~
|
~~~~~~~~~
|
||||||
|
|
||||||
The suffix ``nativesdk`` is now implemented as a prefix, which simplifies a
|
The suffix ``nativesdk`` is now implemented as a prefix, which simplifies a lot
|
||||||
lot of the packaging code for :ref:`nativesdk <ref-classes-nativesdk>` recipes.
|
of the packaging code for :ref:`ref-classes-nativesdk` recipes. All custom
|
||||||
All custom :ref:`nativesdk <ref-classes-nativesdk>` recipes, which are
|
:ref:`ref-classes-nativesdk` recipes, which are relocatable packages that are
|
||||||
relocatable packages that are native to :term:`SDK_ARCH`, and any references
|
native to :term:`SDK_ARCH`, and any references need to be updated to use
|
||||||
need to be updated to use ``nativesdk-*`` instead of ``*-nativesdk``.
|
``nativesdk-*`` instead of ``*-nativesdk``.
|
||||||
|
|
||||||
.. _migration-1.3-task-recipes:
|
.. _migration-1.3-task-recipes:
|
||||||
|
|
||||||
|
@ -109,7 +109,7 @@ automatic upgrade path for most packages. However, you should update
|
||||||
references in your own recipes and configurations as they could be
|
references in your own recipes and configurations as they could be
|
||||||
removed in future releases. You should also rename any custom ``task-*``
|
removed in future releases. You should also rename any custom ``task-*``
|
||||||
recipes to ``packagegroup-*``, and change them to inherit
|
recipes to ``packagegroup-*``, and change them to inherit
|
||||||
:ref:`packagegroup <ref-classes-packagegroup>` instead of ``task``, as well
|
:ref:`ref-classes-packagegroup` instead of ``task``, as well
|
||||||
as taking the opportunity to remove anything now handled by
|
as taking the opportunity to remove anything now handled by
|
||||||
:ref:`ref-classes-packagegroup`, such as providing ``-dev`` and ``-dbg``
|
:ref:`ref-classes-packagegroup`, such as providing ``-dev`` and ``-dbg``
|
||||||
packages, setting :term:`LIC_FILES_CHKSUM`, and so forth. See the
|
packages, setting :term:`LIC_FILES_CHKSUM`, and so forth. See the
|
||||||
|
|
|
@ -95,9 +95,8 @@ The following changes have been made to the package QA checks:
|
||||||
this file within :ref:`ref-tasks-install` if "make
|
this file within :ref:`ref-tasks-install` if "make
|
||||||
install" is installing it.
|
install" is installing it.
|
||||||
|
|
||||||
- If you are using the :ref:`buildhistory <ref-classes-buildhistory>` class,
|
- If you are using the :ref:`ref-classes-buildhistory` class, the check for the
|
||||||
the check for the package
|
package version going backwards is now controlled using a standard QA check.
|
||||||
version going backwards is now controlled using a standard QA check.
|
|
||||||
Thus, if you have customized your :term:`ERROR_QA` or :term:`WARN_QA` values
|
Thus, if you have customized your :term:`ERROR_QA` or :term:`WARN_QA` values
|
||||||
and still wish to have this check performed, you should add
|
and still wish to have this check performed, you should add
|
||||||
"version-going-backwards" to your value for one or the other
|
"version-going-backwards" to your value for one or the other
|
||||||
|
@ -131,7 +130,7 @@ The following directory changes exist:
|
||||||
it easier to delete :term:`TMPDIR` and preserve the build history.
|
it easier to delete :term:`TMPDIR` and preserve the build history.
|
||||||
Additionally, data for produced SDKs is now split by :term:`IMAGE_NAME`.
|
Additionally, data for produced SDKs is now split by :term:`IMAGE_NAME`.
|
||||||
|
|
||||||
- When :ref:`buildhistory <ref-classes-buildhistory>` is enabled, its output
|
- When :ref:`ref-classes-buildhistory` is enabled, its output
|
||||||
is now written under the :term:`Build Directory` rather than :term:`TMPDIR`.
|
is now written under the :term:`Build Directory` rather than :term:`TMPDIR`.
|
||||||
Doing so makes it easier to delete :term:`TMPDIR` and preserve the build
|
Doing so makes it easier to delete :term:`TMPDIR` and preserve the build
|
||||||
history. Additionally, data for produced SDKs is now split by :term:`IMAGE_NAME`.
|
history. Additionally, data for produced SDKs is now split by :term:`IMAGE_NAME`.
|
||||||
|
@ -223,7 +222,7 @@ Task Recipes
|
||||||
The previously deprecated ``task.bbclass`` has now been dropped. For
|
The previously deprecated ``task.bbclass`` has now been dropped. For
|
||||||
recipes that previously inherited from this class, you should rename
|
recipes that previously inherited from this class, you should rename
|
||||||
them from ``task-*`` to ``packagegroup-*`` and inherit
|
them from ``task-*`` to ``packagegroup-*`` and inherit
|
||||||
:ref:`packagegroup <ref-classes-packagegroup>` instead.
|
:ref:`ref-classes-packagegroup` instead.
|
||||||
|
|
||||||
For more information, see the ":ref:`ref-classes-packagegroup`" section.
|
For more information, see the ":ref:`ref-classes-packagegroup`" section.
|
||||||
|
|
||||||
|
|
|
@ -11,9 +11,8 @@ Project 1.6 Release (codename "daisy") from the prior release.
|
||||||
``archiver`` Class
|
``archiver`` Class
|
||||||
------------------
|
------------------
|
||||||
|
|
||||||
The :ref:`archiver <ref-classes-archiver>` class has been rewritten
|
The :ref:`ref-classes-archiver` class has been rewritten and its configuration
|
||||||
and its configuration has been simplified. For more details on the
|
has been simplified. For more details on the source archiver, see the
|
||||||
source archiver, see the
|
|
||||||
":ref:`dev-manual/licenses:maintaining open source license compliance during your product's lifecycle`"
|
":ref:`dev-manual/licenses:maintaining open source license compliance during your product's lifecycle`"
|
||||||
section in the Yocto Project Development Tasks Manual.
|
section in the Yocto Project Development Tasks Manual.
|
||||||
|
|
||||||
|
@ -224,7 +223,7 @@ Package Tests (ptest) are built but not installed by default. For
|
||||||
information on using Package Tests, see the
|
information on using Package Tests, see the
|
||||||
":ref:`dev-manual/packages:testing packages with ptest`" section in the
|
":ref:`dev-manual/packages:testing packages with ptest`" section in the
|
||||||
Yocto Project Development Tasks Manual. For information on the
|
Yocto Project Development Tasks Manual. For information on the
|
||||||
:ref:`ptest <ref-classes-ptest>` class, see the ":ref:`ref-classes-ptest`"
|
:ref:`ref-classes-ptest` class, see the ":ref:`ref-classes-ptest`"
|
||||||
section.
|
section.
|
||||||
|
|
||||||
.. _migration-1.6-build-changes:
|
.. _migration-1.6-build-changes:
|
||||||
|
@ -234,13 +233,13 @@ Build Changes
|
||||||
|
|
||||||
Separate build and source directories have been enabled by default for
|
Separate build and source directories have been enabled by default for
|
||||||
selected recipes where it is known to work and for all
|
selected recipes where it is known to work and for all
|
||||||
recipes that inherit the :ref:`cmake <ref-classes-cmake>` class. In
|
recipes that inherit the :ref:`ref-classes-cmake` class. In
|
||||||
future releases the :ref:`autotools <ref-classes-autotools>` class
|
future releases the :ref:`ref-classes-autotools` class
|
||||||
will enable a separate :term:`Build Directory` by default as well. Recipes
|
will enable a separate :term:`Build Directory` by default as well. Recipes
|
||||||
building Autotools-based software that fails to build with a separate
|
building Autotools-based software that fails to build with a separate
|
||||||
:term:`Build Directory` should be changed to inherit from the
|
:term:`Build Directory` should be changed to inherit from the
|
||||||
:ref:`autotools-brokensep <ref-classes-autotools>` class instead of
|
:ref:`autotools-brokensep <ref-classes-autotools>` class instead of
|
||||||
the :ref:`autotools <ref-classes-autotools>` or ``autotools_stage`` classes.
|
the :ref:`ref-classes-autotools` or ``autotools_stage`` classes.
|
||||||
|
|
||||||
.. _migration-1.6-building-qemu-native:
|
.. _migration-1.6-building-qemu-native:
|
||||||
|
|
||||||
|
|
|
@ -41,13 +41,11 @@ section for more information.
|
||||||
Autotools Class Changes
|
Autotools Class Changes
|
||||||
-----------------------
|
-----------------------
|
||||||
|
|
||||||
The following :ref:`autotools <ref-classes-autotools>` class changes
|
The following :ref:`ref-classes-autotools` class changes occurred:
|
||||||
occurred:
|
|
||||||
|
|
||||||
- *A separate :term:`Build Directory` is now used by default:* The
|
- *A separate :term:`Build Directory` is now used by default:* The
|
||||||
:ref:`autotools <ref-classes-autotools>` class has been
|
:ref:`ref-classes-autotools` class has been changed to use a directory for
|
||||||
changed to use a directory for building
|
building (:term:`B`), which is separate from the source directory
|
||||||
(:term:`B`), which is separate from the source directory
|
|
||||||
(:term:`S`). This is commonly referred to as ``B != S``, or
|
(:term:`S`). This is commonly referred to as ``B != S``, or
|
||||||
an out-of-tree build.
|
an out-of-tree build.
|
||||||
|
|
||||||
|
@ -56,9 +54,8 @@ occurred:
|
||||||
However, if the software is not capable of being built in this
|
However, if the software is not capable of being built in this
|
||||||
manner, you will need to either patch the software so that it can
|
manner, you will need to either patch the software so that it can
|
||||||
build separately, or you will need to change the recipe to inherit
|
build separately, or you will need to change the recipe to inherit
|
||||||
the :ref:`autotools-brokensep <ref-classes-autotools>` class
|
the :ref:`autotools-brokensep <ref-classes-autotools>` class instead
|
||||||
instead of the :ref:`autotools <ref-classes-autotools>`
|
of the :ref:`ref-classes-autotools` or ``autotools_stage`` classes.
|
||||||
or ``autotools_stage`` classes.
|
|
||||||
|
|
||||||
- The ``--foreign`` option is no longer passed to ``automake`` when
|
- The ``--foreign`` option is no longer passed to ``automake`` when
|
||||||
running ``autoconf``: This option tells ``automake`` that a
|
running ``autoconf``: This option tells ``automake`` that a
|
||||||
|
|
|
@ -70,17 +70,16 @@ the following::
|
||||||
Kernel Build Changes
|
Kernel Build Changes
|
||||||
--------------------
|
--------------------
|
||||||
|
|
||||||
The kernel build process was changed to place the source in a common
|
The kernel build process was changed to place the source in a common shared work
|
||||||
shared work area and to place build artifacts separately in the source
|
area and to place build artifacts separately in the source code tree. In theory,
|
||||||
code tree. In theory, migration paths have been provided for most common
|
migration paths have been provided for most common usages in kernel recipes but
|
||||||
usages in kernel recipes but this might not work in all cases. In
|
this might not work in all cases. In particular, users need to ensure that
|
||||||
particular, users need to ensure that ``${S}`` (source files) and
|
``${S}`` (source files) and ``${B}`` (build artifacts) are used correctly in
|
||||||
``${B}`` (build artifacts) are used correctly in functions such as
|
functions such as :ref:`ref-tasks-configure` and :ref:`ref-tasks-install`. For
|
||||||
:ref:`ref-tasks-configure` and
|
kernel recipes that do not inherit from :ref:`ref-classes-kernel-yocto` or
|
||||||
:ref:`ref-tasks-install`. For kernel recipes that do not
|
include ``linux-yocto.inc``, you might wish to refer to the ``linux.inc`` file
|
||||||
inherit from :ref:`kernel-yocto <ref-classes-kernel-yocto>` or include ``linux-yocto.inc``, you might
|
in the ``meta-oe`` layer for the kinds of changes you need to make. For reference,
|
||||||
wish to refer to the ``linux.inc`` file in the ``meta-oe`` layer for the
|
here is the
|
||||||
kinds of changes you need to make. For reference, here is the
|
|
||||||
:oe_git:`commit </meta-openembedded/commit/meta-oe/recipes-kernel/linux/linux.inc?id=fc7132ede27ac67669448d3d2845ce7d46c6a1ee>`
|
:oe_git:`commit </meta-openembedded/commit/meta-oe/recipes-kernel/linux/linux.inc?id=fc7132ede27ac67669448d3d2845ce7d46c6a1ee>`
|
||||||
where the ``linux.inc`` file in ``meta-oe`` was updated.
|
where the ``linux.inc`` file in ``meta-oe`` was updated.
|
||||||
|
|
||||||
|
@ -123,10 +122,9 @@ need to take corrective steps.
|
||||||
Rebuild Improvements
|
Rebuild Improvements
|
||||||
--------------------
|
--------------------
|
||||||
|
|
||||||
Changes have been made to the :ref:`base <ref-classes-base>`,
|
Changes have been made to the :ref:`ref-classes-base`,
|
||||||
:ref:`autotools <ref-classes-autotools>`, and
|
:ref:`ref-classes-autotools`, and :ref:`ref-classes-cmake` classes to clean out
|
||||||
:ref:`cmake <ref-classes-cmake>` classes to clean out generated files
|
generated files when the :ref:`ref-tasks-configure` task needs to be
|
||||||
when the :ref:`ref-tasks-configure` task needs to be
|
|
||||||
re-executed.
|
re-executed.
|
||||||
|
|
||||||
One of the improvements is to attempt to run "make clean" during the
|
One of the improvements is to attempt to run "make clean" during the
|
||||||
|
|
|
@ -216,7 +216,7 @@ modifications synchronized, it is not always obvious to developers how
|
||||||
to manipulate the Metadata as compared to the source.
|
to manipulate the Metadata as compared to the source.
|
||||||
|
|
||||||
Metadata processing has now been removed from the
|
Metadata processing has now been removed from the
|
||||||
:ref:`kernel-yocto <ref-classes-kernel-yocto>` class and the external
|
:ref:`ref-classes-kernel-yocto` class and the external
|
||||||
Metadata repository ``yocto-kernel-cache``, which has always been used
|
Metadata repository ``yocto-kernel-cache``, which has always been used
|
||||||
to seed the ``linux-yocto`` "meta" branch. This separate ``linux-yocto``
|
to seed the ``linux-yocto`` "meta" branch. This separate ``linux-yocto``
|
||||||
cache repository is now the primary location for this data. Due to this
|
cache repository is now the primary location for this data. Due to this
|
||||||
|
|
|
@ -66,7 +66,7 @@ Makefile Environment Changes
|
||||||
:term:`EXTRA_OEMAKE` now defaults to "" instead of
|
:term:`EXTRA_OEMAKE` now defaults to "" instead of
|
||||||
"-e MAKEFLAGS=". Setting :term:`EXTRA_OEMAKE` to "-e MAKEFLAGS=" by default
|
"-e MAKEFLAGS=". Setting :term:`EXTRA_OEMAKE` to "-e MAKEFLAGS=" by default
|
||||||
was a historical accident that has required many classes (e.g.
|
was a historical accident that has required many classes (e.g.
|
||||||
:ref:`autotools <ref-classes-autotools>`, ``module``) and recipes to override this default in order
|
:ref:`ref-classes-autotools`, ``module``) and recipes to override this default in order
|
||||||
to work with sensible build systems. When upgrading to the release, you
|
to work with sensible build systems. When upgrading to the release, you
|
||||||
must edit any recipe that relies upon this old default by either setting
|
must edit any recipe that relies upon this old default by either setting
|
||||||
:term:`EXTRA_OEMAKE` back to "-e MAKEFLAGS=" or by explicitly setting any
|
:term:`EXTRA_OEMAKE` back to "-e MAKEFLAGS=" or by explicitly setting any
|
||||||
|
@ -100,7 +100,7 @@ breaking FHS.
|
||||||
``ac_cv_sizeof_off_t`` is No Longer Cached in Site Files
|
``ac_cv_sizeof_off_t`` is No Longer Cached in Site Files
|
||||||
--------------------------------------------------------
|
--------------------------------------------------------
|
||||||
|
|
||||||
For recipes inheriting the :ref:`autotools <ref-classes-autotools>`
|
For recipes inheriting the :ref:`ref-classes-autotools`
|
||||||
class, ``ac_cv_sizeof_off_t`` is no longer cached in the site files for
|
class, ``ac_cv_sizeof_off_t`` is no longer cached in the site files for
|
||||||
``autoconf``. The reason for this change is because the
|
``autoconf``. The reason for this change is because the
|
||||||
``ac_cv_sizeof_off_t`` value is not necessarily static per architecture
|
``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
|
||||||
large file support is enabled. For most software that uses ``autoconf``,
|
large file support is enabled. For most software that uses ``autoconf``,
|
||||||
this change should not be a problem. However, if you have a recipe that
|
this change should not be a problem. However, if you have a recipe that
|
||||||
bypasses the standard :ref:`ref-tasks-configure` task
|
bypasses the standard :ref:`ref-tasks-configure` task
|
||||||
from the :ref:`autotools <ref-classes-autotools>` class and the software the recipe is building
|
from the :ref:`ref-classes-autotools` class and the software the recipe is building
|
||||||
uses a very old version of ``autoconf``, the recipe might be incapable
|
uses a very old version of ``autoconf``, the recipe might be incapable
|
||||||
of determining the correct size of ``off_t`` during :ref:`ref-tasks-configure`.
|
of determining the correct size of ``off_t`` during :ref:`ref-tasks-configure`.
|
||||||
|
|
||||||
The best course of action is to patch the software as necessary to allow
|
The best course of action is to patch the software as necessary to allow
|
||||||
the default implementation from the :ref:`autotools <ref-classes-autotools>` class to work such
|
the default implementation from the :ref:`ref-classes-autotools` class to work such
|
||||||
that ``autoreconf`` succeeds and produces a working configure script,
|
that ``autoreconf`` succeeds and produces a working configure script,
|
||||||
and to remove the overridden :ref:`ref-tasks-configure` task such that the default
|
and to remove the overridden :ref:`ref-tasks-configure` task such that the default
|
||||||
implementation does get used.
|
implementation does get used.
|
||||||
|
@ -138,9 +138,8 @@ should make edits so that those tasks are after the
|
||||||
after :ref:`ref-tasks-rootfs` so that your added tasks run at the correct
|
after :ref:`ref-tasks-rootfs` so that your added tasks run at the correct
|
||||||
time.
|
time.
|
||||||
|
|
||||||
A minor part of this restructuring is that the post-processing
|
A minor part of this restructuring is that the post-processing definitions and
|
||||||
definitions and functions have been moved from the
|
functions have been moved from the :ref:`ref-classes-image` class to the
|
||||||
:ref:`image <ref-classes-image>` class to the
|
|
||||||
:ref:`rootfs-postcommands <ref-classes-rootfs*>` class. Functionally,
|
:ref:`rootfs-postcommands <ref-classes-rootfs*>` class. Functionally,
|
||||||
however, they remain unchanged.
|
however, they remain unchanged.
|
||||||
|
|
||||||
|
@ -191,18 +190,17 @@ Class Changes
|
||||||
The following classes have changed:
|
The following classes have changed:
|
||||||
|
|
||||||
- ``autotools_stage``: Removed because the
|
- ``autotools_stage``: Removed because the
|
||||||
:ref:`autotools <ref-classes-autotools>` class now provides its
|
:ref:`ref-classes-autotools` class now provides its
|
||||||
functionality. Recipes that inherited from ``autotools_stage`` should
|
functionality. Recipes that inherited from ``autotools_stage`` should
|
||||||
now inherit from :ref:`autotools <ref-classes-autotools>` instead.
|
now inherit from :ref:`ref-classes-autotools` instead.
|
||||||
|
|
||||||
- ``boot-directdisk``: Merged into the ``image-vm`` class. The
|
- ``boot-directdisk``: Merged into the ``image-vm`` class. The
|
||||||
``boot-directdisk`` class was rarely directly used. Consequently,
|
``boot-directdisk`` class was rarely directly used. Consequently,
|
||||||
this change should not cause any issues.
|
this change should not cause any issues.
|
||||||
|
|
||||||
- ``bootimg``: Merged into the
|
- ``bootimg``: Merged into the :ref:`ref-classes-image-live` class. The
|
||||||
:ref:`image-live <ref-classes-image-live>` class. The ``bootimg``
|
``bootimg`` class was rarely directly used. Consequently, this change should
|
||||||
class was rarely directly used. Consequently, this change should not
|
not cause any issues.
|
||||||
cause any issues.
|
|
||||||
|
|
||||||
- ``packageinfo``: Removed due to its limited use by the Hob UI, which
|
- ``packageinfo``: Removed due to its limited use by the Hob UI, which
|
||||||
has itself been removed.
|
has itself been removed.
|
||||||
|
@ -257,14 +255,14 @@ The following changes have been made for the Poky distribution:
|
||||||
not need to change anything unless you are relying on this naming
|
not need to change anything unless you are relying on this naming
|
||||||
elsewhere.
|
elsewhere.
|
||||||
|
|
||||||
- The :ref:`uninative <ref-classes-uninative>` class is now enabled
|
- The :ref:`ref-classes-uninative` class is now enabled
|
||||||
by default in Poky. This class attempts to isolate the build system
|
by default in Poky. This class attempts to isolate the build system
|
||||||
from the host distribution's C library and makes re-use of native
|
from the host distribution's C library and makes re-use of native
|
||||||
shared state artifacts across different host distributions practical.
|
shared state artifacts across different host distributions practical.
|
||||||
With this class enabled, a tarball containing a pre-built C library
|
With this class enabled, a tarball containing a pre-built C library
|
||||||
is downloaded at the start of the build.
|
is downloaded at the start of the build.
|
||||||
|
|
||||||
The :ref:`uninative <ref-classes-uninative>` class is enabled through the
|
The :ref:`ref-classes-uninative` class is enabled through the
|
||||||
``meta/conf/distro/include/yocto-uninative.inc`` file, which for
|
``meta/conf/distro/include/yocto-uninative.inc`` file, which for
|
||||||
those not using the Poky distribution, can include to easily enable
|
those not using the Poky distribution, can include to easily enable
|
||||||
the same functionality.
|
the same functionality.
|
||||||
|
@ -403,9 +401,9 @@ These additional changes exist:
|
||||||
as these directories are automatically found and added.
|
as these directories are automatically found and added.
|
||||||
|
|
||||||
- Inaccurate disk and CPU percentage data has been dropped from
|
- Inaccurate disk and CPU percentage data has been dropped from
|
||||||
:ref:`buildstats <ref-classes-buildstats>` output. This data has been replaced with
|
:ref:`ref-classes-buildstats` output. This data has been replaced with
|
||||||
``getrusage()`` data and corrected IO statistics. You will probably
|
``getrusage()`` data and corrected IO statistics. You will probably
|
||||||
need to update any custom code that reads the :ref:`buildstats <ref-classes-buildstats>` data.
|
need to update any custom code that reads the :ref:`ref-classes-buildstats` data.
|
||||||
|
|
||||||
- The ``meta/conf/distro/include/package_regex.inc`` is now deprecated.
|
- The ``meta/conf/distro/include/package_regex.inc`` is now deprecated.
|
||||||
The contents of this file have been moved to individual recipes.
|
The contents of this file have been moved to individual recipes.
|
||||||
|
|
|
@ -52,7 +52,7 @@ Consider the following:
|
||||||
post-installation script that is installed by a function added to
|
post-installation script that is installed by a function added to
|
||||||
:term:`SYSROOT_PREPROCESS_FUNCS`.
|
:term:`SYSROOT_PREPROCESS_FUNCS`.
|
||||||
|
|
||||||
For an example, see the :ref:`pixbufcache <ref-classes-pixbufcache>` class in ``meta/classes/`` in
|
For an example, see the :ref:`ref-classes-pixbufcache` class in ``meta/classes/`` in
|
||||||
the :ref:`overview-manual/development-environment:yocto project source repositories`.
|
the :ref:`overview-manual/development-environment:yocto project source repositories`.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
@ -402,7 +402,7 @@ The following QA checks have changed:
|
||||||
warning, you need to address missing runtime dependencies.
|
warning, you need to address missing runtime dependencies.
|
||||||
|
|
||||||
For additional information, see the
|
For additional information, see the
|
||||||
:ref:`insane <ref-classes-insane>` class and the
|
:ref:`ref-classes-insane` class and the
|
||||||
":ref:`ref-manual/qa-checks:errors and warnings`" section.
|
":ref:`ref-manual/qa-checks:errors and warnings`" section.
|
||||||
|
|
||||||
.. _migration-2.3-miscellaneous-changes:
|
.. _migration-2.3-miscellaneous-changes:
|
||||||
|
@ -446,7 +446,7 @@ The following miscellaneous changes have occurred:
|
||||||
RSA keys only, and with recent versions of OpenSSH, which deprecates
|
RSA keys only, and with recent versions of OpenSSH, which deprecates
|
||||||
DSA host keys.
|
DSA host keys.
|
||||||
|
|
||||||
- The :ref:`buildhistory <ref-classes-buildhistory>` class now
|
- The :ref:`ref-classes-buildhistory` class now
|
||||||
correctly uses tabs as separators between all columns in
|
correctly uses tabs as separators between all columns in
|
||||||
``installed-package-sizes.txt`` in order to aid import into other
|
``installed-package-sizes.txt`` in order to aid import into other
|
||||||
tools.
|
tools.
|
||||||
|
@ -484,26 +484,24 @@ The following miscellaneous changes have occurred:
|
||||||
|
|
||||||
If you need to preserve these ``.la`` files (e.g. in a custom
|
If you need to preserve these ``.la`` files (e.g. in a custom
|
||||||
distribution), you must change :term:`INHERIT_DISTRO` such that
|
distribution), you must change :term:`INHERIT_DISTRO` such that
|
||||||
":ref:`remove-libtool <ref-classes-remove-libtool>`" is not included
|
":ref:`ref-classes-remove-libtool`" is not included
|
||||||
in the value.
|
in the value.
|
||||||
|
|
||||||
- Extensible SDKs built for GCC 5+ now refuse to install on a
|
- Extensible SDKs built for GCC 5+ now refuse to install on a
|
||||||
distribution where the host GCC version is 4.8 or 4.9. This change
|
distribution where the host GCC version is 4.8 or 4.9. This change
|
||||||
resulted from the fact that the installation is known to fail due to
|
resulted from the fact that the installation is known to fail due to
|
||||||
the way the ``uninative`` shared state (sstate) package is built. See
|
the way the ``uninative`` shared state (sstate) package is built. See
|
||||||
the :ref:`uninative <ref-classes-uninative>` class for additional
|
the :ref:`ref-classes-uninative` class for additional information.
|
||||||
information.
|
|
||||||
|
|
||||||
- All :ref:`native <ref-classes-native>` and
|
- All :ref:`ref-classes-native` and :ref:`ref-classes-nativesdk` recipes now
|
||||||
:ref:`nativesdk <ref-classes-nativesdk>` recipes now use a separate
|
use a separate :term:`DISTRO_FEATURES` value instead of sharing the value
|
||||||
:term:`DISTRO_FEATURES` value instead of sharing the value used by
|
used by recipes for the target, in order to avoid unnecessary rebuilds.
|
||||||
recipes for the target, in order to avoid unnecessary rebuilds.
|
|
||||||
|
|
||||||
The :term:`DISTRO_FEATURES` for :ref:`native <ref-classes-native>` recipes
|
The :term:`DISTRO_FEATURES` for :ref:`ref-classes-native` recipes
|
||||||
is :term:`DISTRO_FEATURES_NATIVE` added to an intersection of
|
is :term:`DISTRO_FEATURES_NATIVE` added to an intersection of
|
||||||
:term:`DISTRO_FEATURES` and :term:`DISTRO_FEATURES_FILTER_NATIVE`.
|
:term:`DISTRO_FEATURES` and :term:`DISTRO_FEATURES_FILTER_NATIVE`.
|
||||||
|
|
||||||
For :ref:`nativesdk <ref-classes-nativesdk>` recipes, the corresponding
|
For :ref:`ref-classes-nativesdk` recipes, the corresponding
|
||||||
variables are :term:`DISTRO_FEATURES_NATIVESDK` and
|
variables are :term:`DISTRO_FEATURES_NATIVESDK` and
|
||||||
:term:`DISTRO_FEATURES_FILTER_NATIVESDK`.
|
:term:`DISTRO_FEATURES_FILTER_NATIVESDK`.
|
||||||
|
|
||||||
|
|
|
@ -197,12 +197,10 @@ Kernel Device Tree Move
|
||||||
-----------------------
|
-----------------------
|
||||||
|
|
||||||
Kernel Device Tree support is now easier to enable in a kernel recipe.
|
Kernel Device Tree support is now easier to enable in a kernel recipe.
|
||||||
The Device Tree code has moved to a
|
The Device Tree code has moved to a :ref:`ref-classes-kernel-devicetree` class.
|
||||||
:ref:`kernel-devicetree <ref-classes-kernel-devicetree>` class.
|
|
||||||
Functionality is automatically enabled for any recipe that inherits the
|
Functionality is automatically enabled for any recipe that inherits the
|
||||||
:ref:`kernel <ref-classes-kernel>` class and sets the
|
:ref:`kernel <ref-classes-kernel>` class and sets the :term:`KERNEL_DEVICETREE`
|
||||||
:term:`KERNEL_DEVICETREE` variable. The
|
variable. The previous mechanism for doing this,
|
||||||
previous mechanism for doing this,
|
|
||||||
``meta/recipes-kernel/linux/linux-dtb.inc``, is still available to avoid
|
``meta/recipes-kernel/linux/linux-dtb.inc``, is still available to avoid
|
||||||
breakage, but triggers a deprecation warning. Future releases of the
|
breakage, but triggers a deprecation warning. Future releases of the
|
||||||
Yocto Project will remove ``meta/recipes-kernel/linux/linux-dtb.inc``.
|
Yocto Project will remove ``meta/recipes-kernel/linux/linux-dtb.inc``.
|
||||||
|
@ -271,11 +269,11 @@ The following are additional changes:
|
||||||
from ``meta-poky`` to OE-Core (i.e. from
|
from ``meta-poky`` to OE-Core (i.e. from
|
||||||
``meta-poky/conf/distro/include`` to ``meta/conf/distro/include``).
|
``meta-poky/conf/distro/include`` to ``meta/conf/distro/include``).
|
||||||
|
|
||||||
- The :ref:`buildhistory <ref-classes-buildhistory>` class now makes
|
- The :ref:`ref-classes-buildhistory` class now makes
|
||||||
a single commit per build rather than one commit per subdirectory in
|
a single commit per build rather than one commit per subdirectory in
|
||||||
the repository. This behavior assumes the commits are enabled with
|
the repository. This behavior assumes the commits are enabled with
|
||||||
:term:`BUILDHISTORY_COMMIT` = "1", which
|
:term:`BUILDHISTORY_COMMIT` = "1", which
|
||||||
is typical. Previously, the :ref:`buildhistory <ref-classes-buildhistory>` class made one commit
|
is typical. Previously, the :ref:`ref-classes-buildhistory` class made one commit
|
||||||
per subdirectory in the repository in order to make it easier to see
|
per subdirectory in the repository in order to make it easier to see
|
||||||
the changes for a particular subdirectory. To view a particular
|
the changes for a particular subdirectory. To view a particular
|
||||||
change, specify that subdirectory as the last parameter on the
|
change, specify that subdirectory as the last parameter on the
|
||||||
|
|
|
@ -139,7 +139,7 @@ The following are BitBake changes:
|
||||||
- Several explicit "run this task for all recipes in the dependency
|
- Several explicit "run this task for all recipes in the dependency
|
||||||
tree" tasks have been removed (e.g. ``fetchall``, ``checkuriall``,
|
tree" tasks have been removed (e.g. ``fetchall``, ``checkuriall``,
|
||||||
and the ``*all`` tasks provided by the ``distrodata`` and
|
and the ``*all`` tasks provided by the ``distrodata`` and
|
||||||
:ref:`archiver <ref-classes-archiver>` classes). There is a BitBake option to complete this for
|
:ref:`ref-classes-archiver` classes). There is a BitBake option to complete this for
|
||||||
any arbitrary task. For example::
|
any arbitrary task. For example::
|
||||||
|
|
||||||
bitbake <target> -c fetchall
|
bitbake <target> -c fetchall
|
||||||
|
@ -189,7 +189,7 @@ Miscellaneous Changes
|
||||||
|
|
||||||
The following are additional changes:
|
The following are additional changes:
|
||||||
|
|
||||||
- The :ref:`kernel <ref-classes-kernel>` class supports building packages for multiple kernels.
|
- The :ref:`ref-classes-kernel` class supports building packages for multiple kernels.
|
||||||
If your kernel recipe or ``.bbappend`` file mentions packaging at
|
If your kernel recipe or ``.bbappend`` file mentions packaging at
|
||||||
all, you should replace references to the kernel in package names
|
all, you should replace references to the kernel in package names
|
||||||
with ``${KERNEL_PACKAGE_NAME}``. For example, if you disable
|
with ``${KERNEL_PACKAGE_NAME}``. For example, if you disable
|
||||||
|
@ -197,7 +197,7 @@ The following are additional changes:
|
||||||
``RDEPENDS_kernel-base = ""`` you can avoid warnings using
|
``RDEPENDS_kernel-base = ""`` you can avoid warnings using
|
||||||
``RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""`` instead.
|
``RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""`` instead.
|
||||||
|
|
||||||
- The :ref:`buildhistory <ref-classes-buildhistory>` class commits changes to the repository by
|
- The :ref:`ref-classes-buildhistory` class commits changes to the repository by
|
||||||
default so you no longer need to set ``BUILDHISTORY_COMMIT = "1"``.
|
default so you no longer need to set ``BUILDHISTORY_COMMIT = "1"``.
|
||||||
If you want to disable commits you need to set
|
If you want to disable commits you need to set
|
||||||
``BUILDHISTORY_COMMIT = "0"`` in your configuration.
|
``BUILDHISTORY_COMMIT = "0"`` in your configuration.
|
||||||
|
@ -209,12 +209,12 @@ The following are additional changes:
|
||||||
maintains a full-featured BSP in the ``meta-ti`` layer. This rename
|
maintains a full-featured BSP in the ``meta-ti`` layer. This rename
|
||||||
avoids the previous name clash that existed between the two BSPs.
|
avoids the previous name clash that existed between the two BSPs.
|
||||||
|
|
||||||
- The :ref:`update-alternatives <ref-classes-update-alternatives>` class no longer works with SysV ``init``
|
- The :ref:`ref-classes-update-alternatives` class no longer works with SysV ``init``
|
||||||
scripts because this usage has been problematic. Also, the
|
scripts because this usage has been problematic. Also, the
|
||||||
``sysklogd`` recipe no longer uses ``update-alternatives`` because it
|
``sysklogd`` recipe no longer uses ``update-alternatives`` because it
|
||||||
is incompatible with other implementations.
|
is incompatible with other implementations.
|
||||||
|
|
||||||
- By default, the :ref:`cmake <ref-classes-cmake>` class uses
|
- By default, the :ref:`ref-classes-cmake` class uses
|
||||||
``ninja`` instead of ``make`` for building. This improves build
|
``ninja`` instead of ``make`` for building. This improves build
|
||||||
performance. If a recipe is broken with ``ninja``, then the recipe
|
performance. If a recipe is broken with ``ninja``, then the recipe
|
||||||
can set ``OECMAKE_GENERATOR = "Unix Makefiles"`` to change back to
|
can set ``OECMAKE_GENERATOR = "Unix Makefiles"`` to change back to
|
||||||
|
|
|
@ -128,10 +128,9 @@ missing from :term:`DEPENDS`).
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
This change affects classes beyond just the two mentioned (i.e.
|
This change affects classes beyond just the two mentioned (i.e. ``distutils``
|
||||||
``distutils`` and ``distutils3``). Any recipe that inherits ``distutils*``
|
and ``distutils3``). Any recipe that inherits ``distutils*`` classes are
|
||||||
classes are affected. For example, the ``setuptools`` and
|
affected. For example, the ``setuptools`` and :ref:`ref-classes-setuptools3`
|
||||||
:ref:`setuptools3 <ref-classes-setuptools3>`
|
|
||||||
recipes are affected since they inherit the ``distutils*`` classes.
|
recipes are affected since they inherit the ``distutils*`` classes.
|
||||||
|
|
||||||
Fetching these types of dependencies that are not provided in the
|
Fetching these types of dependencies that are not provided in the
|
||||||
|
@ -315,12 +314,11 @@ This section provides information about automatic testing changes:
|
||||||
exists and has been replaced by the
|
exists and has been replaced by the
|
||||||
:term:`TESTIMAGE_AUTO` variable.
|
:term:`TESTIMAGE_AUTO` variable.
|
||||||
|
|
||||||
- Inheriting the :ref:`testimage <ref-classes-testimage>` and
|
- Inheriting the :ref:`ref-classes-testimage` and :ref:`ref-classes-testsdk`
|
||||||
:ref:`testsdk <ref-classes-testsdk>` classes: best practices now dictate
|
classes: best practices now dictate that you use the :term:`IMAGE_CLASSES`
|
||||||
that you use the :term:`IMAGE_CLASSES` variable rather than the
|
variable rather than the :term:`INHERIT` variable when you inherit the
|
||||||
:term:`INHERIT` variable when you inherit the
|
:ref:`ref-classes-testimage` and :ref:`ref-classes-testsdk` classes used
|
||||||
:ref:`testimage <ref-classes-testimage>` and
|
for automatic testing.
|
||||||
:ref:`testsdk <ref-classes-testsdk>` classes used for automatic testing.
|
|
||||||
|
|
||||||
.. _migration-2.6-openssl-changes:
|
.. _migration-2.6-openssl-changes:
|
||||||
|
|
||||||
|
|
|
@ -174,8 +174,7 @@ The following miscellaneous changes occurred:
|
||||||
- ``base/pixbufcache``: Obsolete ``sstatecompletions`` code has been
|
- ``base/pixbufcache``: Obsolete ``sstatecompletions`` code has been
|
||||||
removed.
|
removed.
|
||||||
|
|
||||||
- :ref:`native <ref-classes-native>` class:
|
- :ref:`ref-classes-native` class: :term:`RDEPENDS` handling has been enabled.
|
||||||
:term:`RDEPENDS` handling has been enabled.
|
|
||||||
|
|
||||||
- ``inetutils``: This recipe has rsh disabled.
|
- ``inetutils``: This recipe has rsh disabled.
|
||||||
|
|
||||||
|
|
|
@ -49,7 +49,7 @@ The following recipes have been removed.
|
||||||
- ``core-image-lsb-sdk``: Part of removed LSB support.
|
- ``core-image-lsb-sdk``: Part of removed LSB support.
|
||||||
|
|
||||||
- ``cve-check-tool``: Functionally replaced by the ``cve-update-db``
|
- ``cve-check-tool``: Functionally replaced by the ``cve-update-db``
|
||||||
recipe and :ref:`cve-check <ref-classes-cve-check>` class.
|
recipe and :ref:`ref-classes-cve-check` class.
|
||||||
|
|
||||||
- ``eglinfo``: No longer maintained. ``eglinfo`` from ``mesa-demos`` is
|
- ``eglinfo``: No longer maintained. ``eglinfo`` from ``mesa-demos`` is
|
||||||
an adequate and maintained alternative.
|
an adequate and maintained alternative.
|
||||||
|
@ -144,7 +144,7 @@ CVE Checking
|
||||||
------------
|
------------
|
||||||
|
|
||||||
``cve-check-tool`` has been functionally replaced by a new
|
``cve-check-tool`` has been functionally replaced by a new
|
||||||
``cve-update-db`` recipe and functionality built into the :ref:`cve-check <ref-classes-cve-check>`
|
``cve-update-db`` recipe and functionality built into the :ref:`ref-classes-cve-check`
|
||||||
class. The result uses NVD JSON data feeds rather than the deprecated
|
class. The result uses NVD JSON data feeds rather than the deprecated
|
||||||
XML feeds that ``cve-check-tool`` was using, supports CVSSv3 scoring,
|
XML feeds that ``cve-check-tool`` was using, supports CVSSv3 scoring,
|
||||||
and makes other improvements.
|
and makes other improvements.
|
||||||
|
@ -287,7 +287,7 @@ The following miscellaneous changes have occurred.
|
||||||
:term:`NATIVELSBSTRING` to use all lowercase
|
:term:`NATIVELSBSTRING` to use all lowercase
|
||||||
characters even if it does not contain a version number. This change
|
characters even if it does not contain a version number. This change
|
||||||
is necessary only if you are not using
|
is necessary only if you are not using
|
||||||
:ref:`uninative <ref-classes-uninative>` and :term:`SANITY_TESTED_DISTROS`.
|
:ref:`ref-classes-uninative` and :term:`SANITY_TESTED_DISTROS`.
|
||||||
|
|
||||||
- In the ``base-files`` recipe, writing the hostname into
|
- In the ``base-files`` recipe, writing the hostname into
|
||||||
``/etc/hosts`` and ``/etc/hostname`` is now done within the main
|
``/etc/hosts`` and ``/etc/hostname`` is now done within the main
|
||||||
|
|
|
@ -127,7 +127,7 @@ renamed to ``features_check``; the ``distro_features_check`` class still
|
||||||
exists but generates a warning and redirects to the new class. In
|
exists but generates a warning and redirects to the new class. In
|
||||||
preparation for a future removal of the old class it is recommended that
|
preparation for a future removal of the old class it is recommended that
|
||||||
you update recipes currently inheriting ``distro_features_check`` to
|
you update recipes currently inheriting ``distro_features_check`` to
|
||||||
inherit :ref:`features_check <ref-classes-features_check>` instead.
|
inherit :ref:`ref-classes-features_check` instead.
|
||||||
|
|
||||||
.. _migration-3.1-removed-classes:
|
.. _migration-3.1-removed-classes:
|
||||||
|
|
||||||
|
@ -240,10 +240,10 @@ Warnings will now be shown at :ref:`ref-tasks-package_qa` time in the following
|
||||||
circumstances:
|
circumstances:
|
||||||
|
|
||||||
- A recipe installs ``.desktop`` files containing ``MimeType`` keys but
|
- A recipe installs ``.desktop`` files containing ``MimeType`` keys but
|
||||||
does not inherit the new :ref:`mime-xdg <ref-classes-mime-xdg>` class
|
does not inherit the new :ref:`ref-classes-mime-xdg` class
|
||||||
|
|
||||||
- A recipe installs ``.xml`` files into ``${datadir}/mime/packages``
|
- A recipe installs ``.xml`` files into ``${datadir}/mime/packages``
|
||||||
but does not inherit the :ref:`mime <ref-classes-mime>` class
|
but does not inherit the :ref:`ref-classes-mime` class
|
||||||
|
|
||||||
.. _migration-3.1-x86-live-wic:
|
.. _migration-3.1-x86-live-wic:
|
||||||
|
|
||||||
|
|
|
@ -177,13 +177,23 @@ errors:
|
||||||
|
|
||||||
In addition, the following new checks were added and default to triggering an error:
|
In addition, the following new checks were added and default to triggering an error:
|
||||||
|
|
||||||
- :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.
|
- :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.
|
||||||
|
|
||||||
- :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.
|
- :ref:`unhandled-features-check <qa-check-unhandled-features-check>`: Check
|
||||||
|
if any of the variables supported by the :ref:`ref-classes-features_check`
|
||||||
|
class is set while not inheriting the class itself.
|
||||||
|
|
||||||
- :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.
|
- :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:`ref-classes-update-alternatives`
|
||||||
|
class.
|
||||||
|
|
||||||
- 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.
|
- 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.
|
||||||
|
|
||||||
|
|
||||||
.. _migration-3.2-src-uri-file-globbing:
|
.. _migration-3.2-src-uri-file-globbing:
|
||||||
|
@ -209,9 +219,18 @@ files into a subdirectory and reference that instead.
|
||||||
deploy class now cleans ``DEPLOYDIR`` before ``do_deploy``
|
deploy class now cleans ``DEPLOYDIR`` before ``do_deploy``
|
||||||
----------------------------------------------------------
|
----------------------------------------------------------
|
||||||
|
|
||||||
: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.
|
:ref:`ref-tasks-deploy` as implemented in the :ref:`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.
|
||||||
|
|
||||||
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.
|
Most recipes and classes that inherit the :ref:`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.
|
||||||
|
|
||||||
|
|
||||||
.. _migration-3.2-nativesdk-sdk-provides-dummy:
|
.. _migration-3.2-nativesdk-sdk-provides-dummy:
|
||||||
|
@ -219,7 +238,7 @@ Most recipes and classes that inherit the :ref:`deploy <ref-classes-deploy>` cla
|
||||||
Custom SDK / SDK-style recipes need to include ``nativesdk-sdk-provides-dummy``
|
Custom SDK / SDK-style recipes need to include ``nativesdk-sdk-provides-dummy``
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
All :ref:`nativesdk <ref-classes-nativesdk>` packages require ``/bin/sh`` due
|
All :ref:`ref-classes-nativesdk` packages require ``/bin/sh`` due
|
||||||
to their postinstall scriptlets, thus this package has to be dummy-provided
|
to their postinstall scriptlets, thus this package has to be dummy-provided
|
||||||
within the SDK and ``nativesdk-sdk-provides-dummy`` now does this. If you have
|
within the SDK and ``nativesdk-sdk-provides-dummy`` now does this. If you have
|
||||||
a custom SDK recipe (or your own SDK-style recipe similar to e.g.
|
a custom SDK recipe (or your own SDK-style recipe similar to e.g.
|
||||||
|
|
|
@ -63,13 +63,13 @@ need to update those.
|
||||||
New ``python3targetconfig`` class
|
New ``python3targetconfig`` class
|
||||||
---------------------------------
|
---------------------------------
|
||||||
|
|
||||||
A new :ref:`python3targetconfig <ref-classes-python3targetconfig>` class has
|
A new :ref:`ref-classes-python3targetconfig` class has
|
||||||
been created for situations where you would previously have inherited the
|
been created for situations where you would previously have inherited the
|
||||||
:ref:`python3native <ref-classes-python3native>` class but need access to
|
:ref:`ref-classes-python3native` class but need access to
|
||||||
target configuration data (such as correct installation directories). Recipes
|
target configuration data (such as correct installation directories). Recipes
|
||||||
where this situation applies should be changed to inherit
|
where this situation applies should be changed to inherit
|
||||||
:ref:`python3targetconfig <ref-classes-python3targetconfig>` instead of
|
:ref:`ref-classes-python3targetconfig` instead of
|
||||||
:ref:`python3native <ref-classes-python3native>`. This also adds a dependency
|
:ref:`ref-classes-python3native`. This also adds a dependency
|
||||||
on target ``python3``, so it should only be used where appropriate in order to
|
on target ``python3``, so it should only be used where appropriate in order to
|
||||||
avoid unnecessarily lengthening builds.
|
avoid unnecessarily lengthening builds.
|
||||||
|
|
||||||
|
@ -99,11 +99,10 @@ variable so that recipes can specify it explicitly, for example::
|
||||||
S = "${WORKDIR}/git"
|
S = "${WORKDIR}/git"
|
||||||
DISTUTILS_SETUP_PATH = "${S}/python/pythonmodule"
|
DISTUTILS_SETUP_PATH = "${S}/python/pythonmodule"
|
||||||
|
|
||||||
Recipes that inherit from ``distutils3`` (or
|
Recipes that inherit from ``distutils3`` (or :ref:`ref-classes-setuptools3`
|
||||||
:ref:`setuptools3 <ref-classes-setuptools3>` which itself inherits
|
which itself inherits ``distutils3``) that also set :term:`S` to point to a
|
||||||
``distutils3``) that also set :term:`S` to point to a Python module within a
|
Python module within a subdirectory in the aforementioned manner should be
|
||||||
subdirectory in the aforementioned manner should be changed to set
|
changed to set ``DISTUTILS_SETUP_PATH`` instead.
|
||||||
``DISTUTILS_SETUP_PATH`` instead.
|
|
||||||
|
|
||||||
|
|
||||||
.. _migration-3.3-bitbake:
|
.. _migration-3.3-bitbake:
|
||||||
|
|
|
@ -126,7 +126,7 @@ Removed classes
|
||||||
- ``image-mklibs``: not actively tested and upstream mklibs still
|
- ``image-mklibs``: not actively tested and upstream mklibs still
|
||||||
requires Python 2
|
requires Python 2
|
||||||
- ``meta``: no longer useful. Recipes that need to skip installing
|
- ``meta``: no longer useful. Recipes that need to skip installing
|
||||||
packages should inherit :ref:`nopackages <ref-classes-nopackages>` instead.
|
packages should inherit :ref:`ref-classes-nopackages` instead.
|
||||||
|
|
||||||
Prelinking disabled by default
|
Prelinking disabled by default
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
@ -259,7 +259,7 @@ Miscellaneous
|
||||||
instead.
|
instead.
|
||||||
|
|
||||||
- The obsolete ``oe_machinstall`` function previously provided in the
|
- The obsolete ``oe_machinstall`` function previously provided in the
|
||||||
:ref:`utils <ref-classes-utils>` class has been removed. For
|
:ref:`ref-classes-utils` class has been removed. For
|
||||||
machine-specific installation it is recommended that you use the
|
machine-specific installation it is recommended that you use the
|
||||||
built-in override support in the fetcher or overrides in general
|
built-in override support in the fetcher or overrides in general
|
||||||
instead.
|
instead.
|
||||||
|
|
|
@ -119,7 +119,7 @@ License changes
|
||||||
- The ``AVAILABLE_LICENSES`` variable has been removed. This variable was a performance
|
- The ``AVAILABLE_LICENSES`` variable has been removed. This variable was a performance
|
||||||
liability and is highly dependent on which layers are added to the configuration,
|
liability and is highly dependent on which layers are added to the configuration,
|
||||||
which can cause signature issues for users. In addition the ``available_licenses()``
|
which can cause signature issues for users. In addition the ``available_licenses()``
|
||||||
function has been removed from the :ref:`license <ref-classes-license>` class as
|
function has been removed from the :ref:`ref-classes-license` class as
|
||||||
it is no longer needed.
|
it is no longer needed.
|
||||||
|
|
||||||
Removed recipes
|
Removed recipes
|
||||||
|
@ -143,15 +143,14 @@ Python changes
|
||||||
|
|
||||||
- The Python package build process is now based on `wheels <https://pythonwheels.com/>`__.
|
- The Python package build process is now based on `wheels <https://pythonwheels.com/>`__.
|
||||||
Here are the new Python packaging classes that should be used:
|
Here are the new Python packaging classes that should be used:
|
||||||
:ref:`python_flit_core <ref-classes-python_flit_core>`,
|
:ref:`ref-classes-python_flit_core`, :ref:`ref-classes-python_setuptools_build_meta`
|
||||||
:ref:`python_setuptools_build_meta <ref-classes-python_setuptools_build_meta>`
|
and :ref:`ref-classes-python_poetry_core`.
|
||||||
and :ref:`python_poetry_core <ref-classes-python_poetry_core>`.
|
|
||||||
|
|
||||||
- The :ref:`setuptools3 <ref-classes-setuptools3>` class :ref:`ref-tasks-install` task now
|
- The :ref:`ref-classes-setuptools3` class :ref:`ref-tasks-install` task now
|
||||||
installs the ``wheel`` binary archive. In current versions of ``setuptools`` the
|
installs the ``wheel`` binary archive. In current versions of ``setuptools`` the
|
||||||
legacy ``setup.py install`` method is deprecated. If the ``setup.py`` cannot be used
|
legacy ``setup.py install`` method is deprecated. If the ``setup.py`` cannot be used
|
||||||
with wheels, for example it creates files outside of the Python module or standard
|
with wheels, for example it creates files outside of the Python module or standard
|
||||||
entry points, then :ref:`setuptools3_legacy <ref-classes-setuptools3_legacy>` should
|
entry points, then :ref:`ref-classes-setuptools3_legacy` should
|
||||||
be used instead.
|
be used instead.
|
||||||
|
|
||||||
Prelink removed
|
Prelink removed
|
||||||
|
@ -173,7 +172,7 @@ Reproducible as standard
|
||||||
|
|
||||||
Reproducibility is now considered as standard functionality, thus the
|
Reproducibility is now considered as standard functionality, thus the
|
||||||
``reproducible`` class has been removed and its previous contents merged into the
|
``reproducible`` class has been removed and its previous contents merged into the
|
||||||
:ref:`base <ref-classes-base>` class. If you have references in your configuration to
|
:ref:`ref-classes-base` class. If you have references in your configuration to
|
||||||
``reproducible`` in :term:`INHERIT`, :term:`USER_CLASSES` etc. then they should be
|
``reproducible`` in :term:`INHERIT`, :term:`USER_CLASSES` etc. then they should be
|
||||||
removed.
|
removed.
|
||||||
|
|
||||||
|
@ -215,15 +214,15 @@ Miscellaneous changes
|
||||||
~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
- ``blacklist.bbclass`` is removed and the functionality moved to the
|
- ``blacklist.bbclass`` is removed and the functionality moved to the
|
||||||
:ref:`base <ref-classes-base>` class with a more descriptive
|
:ref:`ref-classes-base` class with a more descriptive
|
||||||
``varflag`` variable named :term:`SKIP_RECIPE` which will use the `bb.parse.SkipRecipe()`
|
``varflag`` variable named :term:`SKIP_RECIPE` which will use the `bb.parse.SkipRecipe()`
|
||||||
function. The usage remains the same, for example::
|
function. The usage remains the same, for example::
|
||||||
|
|
||||||
SKIP_RECIPE[my-recipe] = "Reason for skipping recipe"
|
SKIP_RECIPE[my-recipe] = "Reason for skipping recipe"
|
||||||
|
|
||||||
- :ref:`allarch <ref-classes-allarch>` packagegroups can no longer depend on packages
|
- :ref:`ref-classes-allarch` packagegroups can no longer depend on packages
|
||||||
which use :term:`PKG` renaming such as :ref:`ref-classes-debian`. Such packagegroups
|
which use :term:`PKG` renaming such as :ref:`ref-classes-debian`. Such packagegroups
|
||||||
recipes should be changed to avoid inheriting :ref:`allarch <ref-classes-allarch>`.
|
recipes should be changed to avoid inheriting :ref:`ref-classes-allarch`.
|
||||||
|
|
||||||
- The ``lnr`` script has been removed. ``lnr`` implemented the same behaviour as `ln --relative --symbolic`,
|
- The ``lnr`` script has been removed. ``lnr`` implemented the same behaviour as `ln --relative --symbolic`,
|
||||||
since at the time of creation `--relative` was only available in coreutils 8.16
|
since at the time of creation `--relative` was only available in coreutils 8.16
|
||||||
|
@ -232,7 +231,7 @@ Miscellaneous changes
|
||||||
any calls to ``lnr`` in your recipes or classes, they should be replaced with
|
any calls to ``lnr`` in your recipes or classes, they should be replaced with
|
||||||
`ln --relative --symbolic` or `ln -rs` if you prefer the short version.
|
`ln --relative --symbolic` or `ln -rs` if you prefer the short version.
|
||||||
|
|
||||||
- The ``package_qa_handle_error()`` function formerly in the :ref:`insane <ref-classes-insane>`
|
- The ``package_qa_handle_error()`` function formerly in the :ref:`ref-classes-insane`
|
||||||
class has been moved and renamed - if you have any references in your own custom
|
class has been moved and renamed - if you have any references in your own custom
|
||||||
classes they should be changed to ``oe.qa.handle_error()``.
|
classes they should be changed to ``oe.qa.handle_error()``.
|
||||||
|
|
||||||
|
|
|
@ -92,7 +92,7 @@ now cause an error::
|
||||||
|
|
||||||
INHERIT += "testimage"
|
INHERIT += "testimage"
|
||||||
|
|
||||||
Since :ref:`testimage <ref-classes-testimage>` is a class intended solely to
|
Since :ref:`ref-classes-testimage` is a class intended solely to
|
||||||
affect image recipes, this would be correctly specified as::
|
affect image recipes, this would be correctly specified as::
|
||||||
|
|
||||||
IMAGE_CLASSES += "testimage"
|
IMAGE_CLASSES += "testimage"
|
||||||
|
@ -154,16 +154,16 @@ Miscellaneous changes
|
||||||
you can set :term:`WATCHDOG_TIMEOUT` to the desired timeout in seconds. Note
|
you can set :term:`WATCHDOG_TIMEOUT` to the desired timeout in seconds. Note
|
||||||
that the same :term:`WATCHDOG_TIMEOUT` variable also specifies the timeout used
|
that the same :term:`WATCHDOG_TIMEOUT` variable also specifies the timeout used
|
||||||
for the ``watchdog`` tool (if that is being built).
|
for the ``watchdog`` tool (if that is being built).
|
||||||
- The :ref:`image-buildinfo <ref-classes-image-buildinfo>` class now writes to
|
- The :ref:`ref-classes-image-buildinfo` class now writes to
|
||||||
``${sysconfdir}/buildinfo`` instead of ``${sysconfdir}/build`` by default (i.e.
|
``${sysconfdir}/buildinfo`` instead of ``${sysconfdir}/build`` by default (i.e.
|
||||||
the default value of :term:`IMAGE_BUILDINFO_FILE` has been changed). If you have
|
the default value of :term:`IMAGE_BUILDINFO_FILE` has been changed). If you have
|
||||||
code that reads this from images at build or runtime you will need to update it
|
code that reads this from images at build or runtime you will need to update it
|
||||||
or specify your own value for :term:`IMAGE_BUILDINFO_FILE`.
|
or specify your own value for :term:`IMAGE_BUILDINFO_FILE`.
|
||||||
- In the :ref:`archiver <ref-classes-archiver>` class, the default
|
- In the :ref:`ref-classes-archiver` class, the default
|
||||||
``ARCHIVER_OUTDIR`` value no longer includes the :term:`MACHINE` value in order
|
``ARCHIVER_OUTDIR`` value no longer includes the :term:`MACHINE` value in order
|
||||||
to avoid the archive task running multiple times in a multiconfig setup. If you
|
to avoid the archive task running multiple times in a multiconfig setup. If you
|
||||||
have custom code that does something with the files archived by the
|
have custom code that does something with the files archived by the
|
||||||
:ref:`archiver <ref-classes-archiver>` class then you may need to adjust it to
|
:ref:`ref-classes-archiver` class then you may need to adjust it to
|
||||||
the new structure.
|
the new structure.
|
||||||
- If you are not using `systemd` then udev is now configured to use labels
|
- If you are not using `systemd` then udev is now configured to use labels
|
||||||
(``LABEL`` or ``PARTLABEL``) to set the mount point for the device. For example::
|
(``LABEL`` or ``PARTLABEL``) to set the mount point for the device. For example::
|
||||||
|
@ -194,7 +194,7 @@ Miscellaneous changes
|
||||||
:term:`PACKAGECONFIG`. If you are customising this file you will need to
|
:term:`PACKAGECONFIG`. If you are customising this file you will need to
|
||||||
update your customisations.
|
update your customisations.
|
||||||
- With the introduction of picobuild in
|
- With the introduction of picobuild in
|
||||||
:ref:`python_pep517 <ref-classes-python_pep517>`, The ``PEP517_BUILD_API``
|
:ref:`ref-classes-python_pep517`, The ``PEP517_BUILD_API``
|
||||||
variable is no longer supported. If you have any references to this variable
|
variable is no longer supported. If you have any references to this variable
|
||||||
you should remove them.
|
you should remove them.
|
||||||
|
|
||||||
|
|
|
@ -76,24 +76,24 @@ any new Yocto Project release.
|
||||||
|
|
||||||
- *Checking Image / SDK Changes*:
|
- *Checking Image / SDK Changes*:
|
||||||
|
|
||||||
The :ref:`buildhistory <ref-classes-buildhistory>` class can be used
|
The :ref:`ref-classes-buildhistory` class can be used
|
||||||
if you wish to check the impact of changes to images / SDKs across
|
if you wish to check the impact of changes to images / SDKs across
|
||||||
the migration (e.g. added/removed packages, added/removed files, size
|
the migration (e.g. added/removed packages, added/removed files, size
|
||||||
changes etc.). To do this, follow these steps:
|
changes etc.). To do this, follow these steps:
|
||||||
|
|
||||||
#. Enable :ref:`buildhistory <ref-classes-buildhistory>` before the migration
|
#. Enable :ref:`ref-classes-buildhistory` before the migration
|
||||||
|
|
||||||
#. Run a pre-migration build
|
#. Run a pre-migration build
|
||||||
|
|
||||||
#. Capture the :ref:`buildhistory <ref-classes-buildhistory>` output (as
|
#. Capture the :ref:`ref-classes-buildhistory` output (as
|
||||||
specified by :term:`BUILDHISTORY_DIR`) and ensure it is preserved for
|
specified by :term:`BUILDHISTORY_DIR`) and ensure it is preserved for
|
||||||
subsequent builds. How you would do this depends on how you are running
|
subsequent builds. How you would do this depends on how you are running
|
||||||
your builds - if you are doing this all on one workstation in the same
|
your builds - if you are doing this all on one workstation in the same
|
||||||
:term:`Build Directory` you may not need to do anything other than not
|
:term:`Build Directory` you may not need to do anything other than not
|
||||||
deleting the :ref:`buildhistory <ref-classes-buildhistory>` output
|
deleting the :ref:`ref-classes-buildhistory` output
|
||||||
directory. For builds in a pipeline it may be more complicated.
|
directory. For builds in a pipeline it may be more complicated.
|
||||||
|
|
||||||
#. Set a tag in the :ref:`buildhistory <ref-classes-buildhistory>` output (which is a git repository) before
|
#. Set a tag in the :ref:`ref-classes-buildhistory` output (which is a git repository) before
|
||||||
migration, to make the commit from the pre-migration build easy to find
|
migration, to make the commit from the pre-migration build easy to find
|
||||||
as you may end up running multiple builds during the migration.
|
as you may end up running multiple builds during the migration.
|
||||||
|
|
||||||
|
@ -102,7 +102,7 @@ any new Yocto Project release.
|
||||||
#. Run a build
|
#. Run a build
|
||||||
|
|
||||||
#. Check the output changes between the previously set tag and HEAD in the
|
#. Check the output changes between the previously set tag and HEAD in the
|
||||||
:ref:`buildhistory <ref-classes-buildhistory>` output using ``git diff`` or ``buildhistory-diff``.
|
:ref:`ref-classes-buildhistory` output using ``git diff`` or ``buildhistory-diff``.
|
||||||
|
|
||||||
For more information on using :ref:`buildhistory <ref-classes-buildhistory>`, see
|
For more information on using :ref:`ref-classes-buildhistory`, see
|
||||||
:ref:`dev-manual/build-quality:maintaining build output quality`.
|
:ref:`dev-manual/build-quality:maintaining build output quality`.
|
||||||
|
|
|
@ -9,7 +9,7 @@ New Features / Enhancements in 3.4
|
||||||
- Linux kernel 5.14, glibc 2.34 and ~280 other recipe upgrades
|
- Linux kernel 5.14, glibc 2.34 and ~280 other recipe upgrades
|
||||||
- Switched override character to ':' (replacing '_') for more robust parsing and improved performance --- see the above migration guide for help
|
- Switched override character to ':' (replacing '_') for more robust parsing and improved performance --- see the above migration guide for help
|
||||||
- Rust integrated into core, providing rust support for cross-compilation and SDK
|
- Rust integrated into core, providing rust support for cross-compilation and SDK
|
||||||
- New :ref:`create-spdx <ref-classes-create-spdx>` class for creating SPDX SBoM documents
|
- New :ref:`ref-classes-create-spdx` class for creating SPDX SBoM documents
|
||||||
- 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
|
- 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
|
||||||
- Several optimisations to reduce unnecessary task dependencies for faster builds
|
- Several optimisations to reduce unnecessary task dependencies for faster builds
|
||||||
- seccomp integrated into core, with additional enabling for gnutls, systemd, qemu
|
- seccomp integrated into core, with additional enabling for gnutls, systemd, qemu
|
||||||
|
@ -71,7 +71,7 @@ New Features / Enhancements in 3.4
|
||||||
|
|
||||||
- Enable :ref:`ref-tasks-populate_sdk` with multilibs
|
- Enable :ref:`ref-tasks-populate_sdk` with multilibs
|
||||||
- New ``SDKPATHINSTALL`` variable decouples default install path from
|
- New ``SDKPATHINSTALL`` variable decouples default install path from
|
||||||
built in path to avoid rebuilding :ref:`nativesdk <ref-classes-nativesdk>`
|
built in path to avoid rebuilding :ref:`ref-classes-nativesdk`
|
||||||
components on e.g. :term:`DISTRO_VERSION` changes
|
components on e.g. :term:`DISTRO_VERSION` changes
|
||||||
- eSDK: Error if trying to generate an eSDK from a multiconfig
|
- eSDK: Error if trying to generate an eSDK from a multiconfig
|
||||||
- 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
|
- 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
|
||||||
|
|
|
@ -13,7 +13,7 @@ New Features / Enhancements in 4.0
|
||||||
- Reproducibility: this release fixes the reproducibility issues with
|
- Reproducibility: this release fixes the reproducibility issues with
|
||||||
``rust-llvm`` and ``golang``. Recipes in OpenEmbedded-Core are now fully
|
``rust-llvm`` and ``golang``. Recipes in OpenEmbedded-Core are now fully
|
||||||
reproducible. Functionality previously in the optional "reproducible"
|
reproducible. Functionality previously in the optional "reproducible"
|
||||||
class has been merged into the :ref:`base <ref-classes-base>` class.
|
class has been merged into the :ref:`ref-classes-base` class.
|
||||||
|
|
||||||
- Network access is now disabled by default for tasks other than where it is expected to ensure build integrity (where host kernel supports it)
|
- Network access is now disabled by default for tasks other than where it is expected to ensure build integrity (where host kernel supports it)
|
||||||
|
|
||||||
|
@ -31,8 +31,7 @@ New Features / Enhancements in 4.0
|
||||||
- The Python package build process is now based on `wheels <https://pythonwheels.com/>`__
|
- The Python package build process is now based on `wheels <https://pythonwheels.com/>`__
|
||||||
in line with the upstream direction.
|
in line with the upstream direction.
|
||||||
|
|
||||||
- New :ref:`overlayfs <ref-classes-overlayfs>` and
|
- New :ref:`ref-classes-overlayfs` and :ref:`ref-classes-overlayfs-etc` classes and
|
||||||
:ref:`overlayfs-etc <ref-classes-overlayfs-etc>` classes and
|
|
||||||
``overlayroot`` support in the :term:`Initramfs` framework to make it easier to
|
``overlayroot`` support in the :term:`Initramfs` framework to make it easier to
|
||||||
overlay read-only filesystems (for example) with
|
overlay read-only filesystems (for example) with
|
||||||
:wikipedia:`OverlayFS <OverlayFS>`.
|
:wikipedia:`OverlayFS <OverlayFS>`.
|
||||||
|
@ -218,7 +217,7 @@ New Features / Enhancements in 4.0
|
||||||
- Ensure addition of patch-fuzz retriggers do_qa_patch
|
- Ensure addition of patch-fuzz retriggers do_qa_patch
|
||||||
- Added a sanity check for allarch packagegroups
|
- Added a sanity check for allarch packagegroups
|
||||||
|
|
||||||
- :ref:`create-spdx <ref-classes-create-spdx>` class improvements:
|
- :ref:`ref-classes-create-spdx` class improvements:
|
||||||
|
|
||||||
- Get SPDX-License-Identifier from source files
|
- Get SPDX-License-Identifier from source files
|
||||||
- Generate manifest also for SDKs
|
- Generate manifest also for SDKs
|
||||||
|
@ -238,9 +237,9 @@ New Features / Enhancements in 4.0
|
||||||
|
|
||||||
- SDK-related enhancements:
|
- SDK-related enhancements:
|
||||||
|
|
||||||
- Extended recipes to :ref:`nativesdk <ref-classes-nativesdk>`: ``cargo``,
|
- Extended recipes to :ref:`ref-classes-nativesdk`: ``cargo``,
|
||||||
``librsvg``, ``libstd-rs``, ``libva``, ``python3-docutil``, ``python3-packaging``
|
``librsvg``, ``libstd-rs``, ``libva``, ``python3-docutil``, ``python3-packaging``
|
||||||
- Enabled :ref:`nativesdk <ref-classes-nativesdk>` recipes to find a correct version
|
- Enabled :ref:`ref-classes-nativesdk` recipes to find a correct version
|
||||||
of the rust cross compiler
|
of the rust cross compiler
|
||||||
- Support creating per-toolchain cmake file in SDK
|
- Support creating per-toolchain cmake file in SDK
|
||||||
|
|
||||||
|
|
|
@ -30,7 +30,7 @@ New Features / Enhancements in 4.1
|
||||||
- Support for building rust for the target
|
- Support for building rust for the target
|
||||||
- Significant SDK toolchain build optimisation
|
- Significant SDK toolchain build optimisation
|
||||||
- Support for building native components in the SDK
|
- Support for building native components in the SDK
|
||||||
- Support ``crate://`` fetcher with :ref:`externalsrc <ref-classes-externalsrc>`
|
- Support ``crate://`` fetcher with :ref:`ref-classes-externalsrc`
|
||||||
|
|
||||||
- New core recipes:
|
- New core recipes:
|
||||||
|
|
||||||
|
@ -52,7 +52,7 @@ New Features / Enhancements in 4.1
|
||||||
- Added support for Ignored CVEs
|
- Added support for Ignored CVEs
|
||||||
- Enable recursive CVE checking also for ``do_populate_sdk``
|
- Enable recursive CVE checking also for ``do_populate_sdk``
|
||||||
- New :term:`CVE_CHECK_SHOW_WARNINGS` variable to disable unpatched CVE warning messages
|
- New :term:`CVE_CHECK_SHOW_WARNINGS` variable to disable unpatched CVE warning messages
|
||||||
- The :ref:`pypi <ref-classes-pypi>` class now defaults :term:`CVE_PRODUCT` from :term:`PYPI_PACKAGE`
|
- The :ref:`ref-classes-pypi` class now defaults :term:`CVE_PRODUCT` from :term:`PYPI_PACKAGE`
|
||||||
- Added current kernel CVEs to ignore list since we stay as close to the kernel stable releases as we can
|
- Added current kernel CVEs to ignore list since we stay as close to the kernel stable releases as we can
|
||||||
- Optimisations to avoid dependencies on fetching
|
- Optimisations to avoid dependencies on fetching
|
||||||
|
|
||||||
|
@ -60,9 +60,9 @@ New Features / Enhancements in 4.1
|
||||||
- Dependency of -dev package on main package is now an :term:`RRECOMMENDS` and can be easily set via new :term:`DEV_PKG_DEPENDENCY` variable
|
- Dependency of -dev package on main package is now an :term:`RRECOMMENDS` and can be easily set via new :term:`DEV_PKG_DEPENDENCY` variable
|
||||||
|
|
||||||
- Support for CPU, I/O and memory pressure regulation in BitBake
|
- Support for CPU, I/O and memory pressure regulation in BitBake
|
||||||
- Pressure data gathering in :ref:`buildstats <ref-classes-buildstats>` and rendering in ``pybootchartgui``
|
- Pressure data gathering in :ref:`ref-classes-buildstats` and rendering in ``pybootchartgui``
|
||||||
|
|
||||||
- New Picobuild system for lightweight Python PEP-517 build support in the :ref:`python_pep517 <ref-classes-python_pep517>` class
|
- New Picobuild system for lightweight Python PEP-517 build support in the :ref:`ref-classes-python_pep517` class
|
||||||
|
|
||||||
- Many classes are now split into global and recipe contexts for better
|
- Many classes are now split into global and recipe contexts for better
|
||||||
validation. For more information, see
|
validation. For more information, see
|
||||||
|
@ -99,10 +99,10 @@ New Features / Enhancements in 4.1
|
||||||
- SDK-related enhancements:
|
- SDK-related enhancements:
|
||||||
|
|
||||||
- :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>`
|
- :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>`
|
||||||
- :ref:`image-buildinfo <ref-classes-image-buildinfo>` class now also writes build information to SDKs
|
- :ref:`ref-classes-image-buildinfo` class now also writes build information to SDKs
|
||||||
- New :term:`SDK_TOOLCHAIN_LANGS` variable to control support of rust / go in SDK
|
- New :term:`SDK_TOOLCHAIN_LANGS` variable to control support of rust / go in SDK
|
||||||
- rust-llvm: enabled :ref:`nativesdk <ref-classes-nativesdk>` variant
|
- rust-llvm: enabled :ref:`ref-classes-nativesdk` variant
|
||||||
- python3-pluggy: enabled for :ref:`native <ref-classes-native>` / :ref:`nativesdk <ref-classes-nativesdk>`
|
- python3-pluggy: enabled for :ref:`ref-classes-native` / :ref:`ref-classes-nativesdk`
|
||||||
|
|
||||||
- QEMU/runqemu enhancements:
|
- QEMU/runqemu enhancements:
|
||||||
|
|
||||||
|
@ -115,11 +115,11 @@ New Features / Enhancements in 4.1
|
||||||
- New variable :term:`UBOOT_MKIMAGE_KERNEL_TYPE`
|
- New variable :term:`UBOOT_MKIMAGE_KERNEL_TYPE`
|
||||||
- New variable :term:`FIT_PAD_ALG` to control FIT image padding algorithm
|
- New variable :term:`FIT_PAD_ALG` to control FIT image padding algorithm
|
||||||
- New :term:`KERNEL_DEPLOY_DEPEND` variable to allow disabling image dependency on deploying the kernel
|
- New :term:`KERNEL_DEPLOY_DEPEND` variable to allow disabling image dependency on deploying the kernel
|
||||||
- :ref:`image_types <ref-classes-image_types>`: isolate the write of UBI
|
- :ref:`ref-classes-image_types`: isolate the write of UBI
|
||||||
configuration to a ``write_ubi_config`` function that can be easily overridden
|
configuration to a ``write_ubi_config`` function that can be easily overridden
|
||||||
|
|
||||||
- openssh: add support for config snippet includes to ssh and sshd
|
- openssh: add support for config snippet includes to ssh and sshd
|
||||||
- :ref:`create-spdx <ref-classes-create-spdx>`: Add :term:`SPDX_PRETTY` option
|
- :ref:`ref-classes-create-spdx`: Add :term:`SPDX_PRETTY` option
|
||||||
- wpa-supplicant: build static library if not disabled via :term:`DISABLE_STATIC`
|
- wpa-supplicant: build static library if not disabled via :term:`DISABLE_STATIC`
|
||||||
- wpa-supplicant: package dynamic modules
|
- wpa-supplicant: package dynamic modules
|
||||||
- openssl: extract legacy provider module to a separate package
|
- openssl: extract legacy provider module to a separate package
|
||||||
|
@ -132,11 +132,11 @@ New Features / Enhancements in 4.1
|
||||||
- systemd: systemd-systemctl: Support instance conf files during enable
|
- systemd: systemd-systemctl: Support instance conf files during enable
|
||||||
- weston.init: enable ``xwayland`` in weston.ini if ``x11`` is in :term:`DISTRO_FEATURES`
|
- weston.init: enable ``xwayland`` in weston.ini if ``x11`` is in :term:`DISTRO_FEATURES`
|
||||||
- New ``npm_registry`` Python module to enable caching with nodejs 16+
|
- New ``npm_registry`` Python module to enable caching with nodejs 16+
|
||||||
- :ref:`npm <ref-classes-npm>`: replaced ``npm pack`` call with ``tar czf`` for nodejs 16+ compatibility and improved ``do_configure`` performance
|
- :ref:`ref-classes-npm`: replaced ``npm pack`` call with ``tar czf`` for nodejs 16+ compatibility and improved ``do_configure`` performance
|
||||||
- Enabled :ref:`bin_package <ref-classes-bin-package>` class to work properly in the native case
|
- Enabled :ref:`ref-classes-bin-package` class to work properly in the native case
|
||||||
- Enabled :ref:`buildpaths <qa-check-buildpaths>` QA check as a warning by default
|
- Enabled :ref:`buildpaths <qa-check-buildpaths>` QA check as a warning by default
|
||||||
- New :term:`OVERLAYFS_ETC_EXPOSE_LOWER` to provide read-only access to the original ``/etc`` content with :ref:`overlayfs-etc <ref-classes-overlayfs-etc>`
|
- New :term:`OVERLAYFS_ETC_EXPOSE_LOWER` to provide read-only access to the original ``/etc`` content with :ref:`ref-classes-overlayfs-etc`
|
||||||
- New :term:`OVERLAYFS_QA_SKIP` variable to allow skipping check on :ref:`overlayfs <ref-classes-overlayfs>` mounts
|
- New :term:`OVERLAYFS_QA_SKIP` variable to allow skipping check on :ref:`ref-classes-overlayfs` mounts
|
||||||
- New :term:`PACKAGECONFIG` options for individual recipes:
|
- New :term:`PACKAGECONFIG` options for individual recipes:
|
||||||
|
|
||||||
- apr: xsi-strerror
|
- apr: xsi-strerror
|
||||||
|
@ -176,7 +176,7 @@ New Features / Enhancements in 4.1
|
||||||
- The Python ``zoneinfo`` module is now split out to its own ``python3-zoneinfo`` package.
|
- The Python ``zoneinfo`` module is now split out to its own ``python3-zoneinfo`` package.
|
||||||
- busybox: added devmem 128-bit support
|
- busybox: added devmem 128-bit support
|
||||||
- vim: split xxd out into its own package
|
- vim: split xxd out into its own package
|
||||||
- New :ref:`github-releases <ref-classes-github-releases>` class to consolidate version checks for github-based packages
|
- New :ref:`ref-classes-github-releases` class to consolidate version checks for github-based packages
|
||||||
- ``devtool reset`` now preserves ``workspace/sources`` source trees in ``workspace/attic/sources/`` instead of leaving them in-place
|
- ``devtool reset`` now preserves ``workspace/sources`` source trees in ``workspace/attic/sources/`` instead of leaving them in-place
|
||||||
- scripts/patchreview: Add commit to stored json data
|
- scripts/patchreview: Add commit to stored json data
|
||||||
- scripts/patchreview: Make json output human parsable
|
- scripts/patchreview: Make json output human parsable
|
||||||
|
@ -204,7 +204,7 @@ Known Issues in 4.1
|
||||||
:yocto_bugs:`bug 14626 </show_bug.cgi?id=14626>`, which also details the fix.
|
:yocto_bugs:`bug 14626 </show_bug.cgi?id=14626>`, which also details the fix.
|
||||||
|
|
||||||
- The change to :ref:`migration-4.1-classes-split` inadvertently moved the
|
- The change to :ref:`migration-4.1-classes-split` inadvertently moved the
|
||||||
:ref:`externalsrc <ref-classes-externalsrc>` class to ``meta/classes-recipe``,
|
:ref:`ref-classes-externalsrc` class to ``meta/classes-recipe``,
|
||||||
when it is not recipe-specific and can also be used in a global context. The
|
when it is not recipe-specific and can also be used in a global context. The
|
||||||
class will be moved back to ``meta/classes`` in the next point release. Filed
|
class will be moved back to ``meta/classes`` in the next point release. Filed
|
||||||
as :yocto_bugs:`bug 14940 </show_bug.cgi?id=14940>`.
|
as :yocto_bugs:`bug 14940 </show_bug.cgi?id=14940>`.
|
||||||
|
|
|
@ -107,8 +107,7 @@ Classes
|
||||||
-------
|
-------
|
||||||
|
|
||||||
Class files (``.bbclass``) contain information that is useful to share
|
Class files (``.bbclass``) contain information that is useful to share
|
||||||
between recipes files. An example is the
|
between recipes files. An example is the :ref:`ref-classes-autotools` class,
|
||||||
:ref:`autotools <ref-classes-autotools>` class,
|
|
||||||
which contains common settings for any application that is built with
|
which contains common settings for any application that is built with
|
||||||
the :wikipedia:`GNU Autotools <GNU_Autotools>`.
|
the :wikipedia:`GNU Autotools <GNU_Autotools>`.
|
||||||
The ":ref:`ref-manual/classes:Classes`" chapter in the Yocto Project
|
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
|
||||||
user checks in items (e.g. a local directory containing a development
|
user checks in items (e.g. a local directory containing a development
|
||||||
source tree used by the group).
|
source tree used by the group).
|
||||||
|
|
||||||
The canonical method through which to include a local project is to use
|
The canonical method through which to include a local project is to use the
|
||||||
the :ref:`externalsrc <ref-classes-externalsrc>`
|
:ref:`ref-classes-externalsrc` class to include that local project. You use
|
||||||
class to include that local project. You use either the ``local.conf``
|
either the ``local.conf`` or a recipe's append file to override or set the
|
||||||
or a recipe's append file to override or set the recipe to point to the
|
recipe to point to the local directory on your disk to pull in the whole
|
||||||
local directory on your disk to pull in the whole source tree.
|
source tree.
|
||||||
|
|
||||||
Source Control Managers (Optional)
|
Source Control Managers (Optional)
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
@ -628,8 +627,7 @@ types, and you specify which classes to enable through the
|
||||||
:term:`PACKAGE_CLASSES`
|
:term:`PACKAGE_CLASSES`
|
||||||
variable. Before placing the packages into package feeds, the build
|
variable. Before placing the packages into package feeds, the build
|
||||||
process validates them with generated output quality assurance checks
|
process validates them with generated output quality assurance checks
|
||||||
through the :ref:`insane <ref-classes-insane>`
|
through the :ref:`ref-classes-insane` class.
|
||||||
class.
|
|
||||||
|
|
||||||
The package feed area resides in the :term:`Build Directory`. The directory the
|
The package feed area resides in the :term:`Build Directory`. The directory the
|
||||||
build system uses to temporarily store packages is determined by a
|
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:
|
||||||
are specific to configurations for the source code being built by the
|
are specific to configurations for the source code being built by the
|
||||||
recipe.
|
recipe.
|
||||||
|
|
||||||
If you are using the
|
If you are using the :ref:`ref-classes-autotools` class,
|
||||||
:ref:`autotools <ref-classes-autotools>` class,
|
|
||||||
you can add additional configuration options by using the
|
you can add additional configuration options by using the
|
||||||
:term:`EXTRA_OECONF` or
|
:term:`EXTRA_OECONF` or
|
||||||
:term:`PACKAGECONFIG_CONFARGS`
|
:term:`PACKAGECONFIG_CONFARGS`
|
||||||
variables. For information on how this variable works within that
|
variables. For information on how this variable works within that
|
||||||
class, see the
|
class, see the :ref:`ref-classes-autotools` class
|
||||||
:ref:`autotools <ref-classes-autotools>` class
|
|
||||||
:yocto_git:`here </poky/tree/meta/classes-recipe/autotools.bbclass>`.
|
:yocto_git:`here </poky/tree/meta/classes-recipe/autotools.bbclass>`.
|
||||||
|
|
||||||
- *do_compile*: Once a configuration task has been satisfied,
|
- *do_compile*: Once a configuration task has been satisfied,
|
||||||
|
@ -920,7 +916,7 @@ the analysis and package splitting process use several areas:
|
||||||
- :term:`STAGING_DIR_TARGET`:
|
- :term:`STAGING_DIR_TARGET`:
|
||||||
The path for the sysroot used when a component that is built to
|
The path for the sysroot used when a component that is built to
|
||||||
execute on a system and it generates code for yet another machine
|
execute on a system and it generates code for yet another machine
|
||||||
(e.g. :ref:`cross-canadian <ref-classes-cross-canadian>` recipes).
|
(e.g. :ref:`ref-classes-cross-canadian` recipes).
|
||||||
|
|
||||||
The :term:`FILES` variable defines the
|
The :term:`FILES` variable defines the
|
||||||
files that go into each package in
|
files that go into each package in
|
||||||
|
@ -1006,13 +1002,11 @@ is read-only.
|
||||||
The final stages of the :ref:`ref-tasks-rootfs` task handle post processing. Post
|
The final stages of the :ref:`ref-tasks-rootfs` task handle post processing. Post
|
||||||
processing includes creation of a manifest file and optimizations.
|
processing includes creation of a manifest file and optimizations.
|
||||||
|
|
||||||
The manifest file (``.manifest``) resides in the same directory as the
|
The manifest file (``.manifest``) resides in the same directory as the root
|
||||||
root filesystem image. This file lists out, line-by-line, the installed
|
filesystem image. This file lists out, line-by-line, the installed packages.
|
||||||
packages. The manifest file is useful for the
|
The manifest file is useful for the :ref:`ref-classes-testimage` class,
|
||||||
:ref:`testimage <ref-classes-testimage>` class,
|
|
||||||
for example, to determine whether or not to run specific tests. See the
|
for example, to determine whether or not to run specific tests. See the
|
||||||
:term:`IMAGE_MANIFEST`
|
:term:`IMAGE_MANIFEST` variable for additional information.
|
||||||
variable for additional information.
|
|
||||||
|
|
||||||
Optimizing processes that are run across the image include ``mklibs``
|
Optimizing processes that are run across the image include ``mklibs``
|
||||||
and any other post-processing commands as defined by the
|
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
|
||||||
problem is being able to use checksum information during the build and
|
problem is being able to use checksum information during the build and
|
||||||
being able to reuse or rebuild specific components.
|
being able to reuse or rebuild specific components.
|
||||||
|
|
||||||
The :ref:`sstate <ref-classes-sstate>` class is a
|
The :ref:`ref-classes-sstate` class is a relatively generic implementation of
|
||||||
relatively generic implementation of how to "capture" a snapshot of a
|
how to "capture" a snapshot of a given task. The idea is that the build process
|
||||||
given task. The idea is that the build process does not care about the
|
does not care about the source of a task's output. Output could be freshly
|
||||||
source of a task's output. Output could be freshly built or it could be
|
built or it could be downloaded and unpacked from somewhere. In other words,
|
||||||
downloaded and unpacked from somewhere. In other words, the build
|
the build process does not need to worry about its origin.
|
||||||
process does not need to worry about its origin.
|
|
||||||
|
|
||||||
Two types of output exist. One type is just about creating a directory
|
Two types of output exist. One type is just about creating a directory
|
||||||
in :term:`WORKDIR`. A good example is
|
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
|
||||||
directory tree such as the sysroot.
|
directory tree such as the sysroot.
|
||||||
|
|
||||||
The Yocto Project team has tried to keep the details of the
|
The Yocto Project team has tried to keep the details of the
|
||||||
implementation hidden in the :ref:`sstate <ref-classes-sstate>` class. From a user's perspective,
|
implementation hidden in the :ref:`ref-classes-sstate` class. From a user's perspective,
|
||||||
adding shared state wrapping to a task is as simple as this
|
adding shared state wrapping to a task is as simple as this
|
||||||
:ref:`ref-tasks-deploy` example taken
|
:ref:`ref-tasks-deploy` example taken from the :ref:`ref-classes-deploy` class::
|
||||||
from the :ref:`deploy <ref-classes-deploy>` class::
|
|
||||||
|
|
||||||
DEPLOYDIR = "${WORKDIR}/deploy-${PN}"
|
DEPLOYDIR = "${WORKDIR}/deploy-${PN}"
|
||||||
SSTATETASKS += "do_deploy"
|
SSTATETASKS += "do_deploy"
|
||||||
|
@ -1786,11 +1778,9 @@ from the :ref:`deploy <ref-classes-deploy>` class::
|
||||||
|
|
||||||
The following list explains the previous example:
|
The following list explains the previous example:
|
||||||
|
|
||||||
- Adding ``do_deploy`` to ``SSTATETASKS`` adds some required
|
- Adding ``do_deploy`` to ``SSTATETASKS`` adds some required sstate-related
|
||||||
sstate-related processing, which is implemented in the
|
processing, which is implemented in the :ref:`ref-classes-sstate` class, to
|
||||||
:ref:`sstate <ref-classes-sstate>` class, to
|
before and after the :ref:`ref-tasks-deploy` task.
|
||||||
before and after the
|
|
||||||
:ref:`ref-tasks-deploy` task.
|
|
||||||
|
|
||||||
- The ``do_deploy[sstate-inputdirs] = "${DEPLOYDIR}"`` declares that
|
- The ``do_deploy[sstate-inputdirs] = "${DEPLOYDIR}"`` declares that
|
||||||
:ref:`ref-tasks-deploy` places its output in ``${DEPLOYDIR}`` when run normally
|
:ref:`ref-tasks-deploy` places its output in ``${DEPLOYDIR}`` when run normally
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -358,7 +358,7 @@ Here are the image features available for all images:
|
||||||
a given image.
|
a given image.
|
||||||
|
|
||||||
Some image features are available only when you inherit the
|
Some image features are available only when you inherit the
|
||||||
:ref:`core-image <ref-classes-core-image>` class. The current list of
|
:ref:`ref-classes-core-image` class. The current list of
|
||||||
these valid features is as follows:
|
these valid features is as follows:
|
||||||
|
|
||||||
- *hwcodecs:* Installs hardware acceleration codecs.
|
- *hwcodecs:* Installs hardware acceleration codecs.
|
||||||
|
|
|
@ -580,7 +580,7 @@ Errors and Warnings
|
||||||
|
|
||||||
The specified package contains mime type files (``.xml`` files in
|
The specified package contains mime type files (``.xml`` files in
|
||||||
``${datadir}/mime/packages``) and yet does not inherit the
|
``${datadir}/mime/packages``) and yet does not inherit the
|
||||||
:ref:`mime <ref-classes-mime>` class which will ensure that these get
|
:ref:`ref-classes-mime` class which will ensure that these get
|
||||||
properly installed. Either add ``inherit mime`` to the recipe or remove the
|
properly installed. Either add ``inherit mime`` to the recipe or remove the
|
||||||
files at the :ref:`ref-tasks-install` step if they are not needed.
|
files at the :ref:`ref-tasks-install` step if they are not needed.
|
||||||
|
|
||||||
|
@ -590,7 +590,7 @@ Errors and Warnings
|
||||||
- ``package contains desktop file with key 'MimeType' but does not inhert mime-xdg: <packagename> path '<file>' [mime-xdg]``
|
- ``package contains desktop file with key 'MimeType' but does not inhert mime-xdg: <packagename> path '<file>' [mime-xdg]``
|
||||||
|
|
||||||
The specified package contains a .desktop file with a 'MimeType' key
|
The specified package contains a .desktop file with a 'MimeType' key
|
||||||
present, but does not inherit the :ref:`mime-xdg <ref-classes-mime-xdg>`
|
present, but does not inherit the :ref:`ref-classes-mime-xdg`
|
||||||
class that is required in order for that to be activated. Either add
|
class that is required in order for that to be activated. Either add
|
||||||
``inherit mime`` to the recipe or remove the files at the
|
``inherit mime`` to the recipe or remove the files at the
|
||||||
:ref:`ref-tasks-install` step if they are not needed.
|
:ref:`ref-tasks-install` step if they are not needed.
|
||||||
|
@ -621,9 +621,9 @@ Errors and Warnings
|
||||||
- ``<recipename>: recipe doesn't inherit features_check [unhandled-features-check]``
|
- ``<recipename>: recipe doesn't inherit features_check [unhandled-features-check]``
|
||||||
|
|
||||||
This check ensures that if one of the variables that the
|
This check ensures that if one of the variables that the
|
||||||
:ref:`features_check <ref-classes-features_check>` class supports (e.g.
|
:ref:`ref-classes-features_check` class supports (e.g.
|
||||||
:term:`REQUIRED_DISTRO_FEATURES`) is used, then the recipe
|
:term:`REQUIRED_DISTRO_FEATURES`) is used, then the recipe
|
||||||
inherits :ref:`features_check <ref-classes-features_check>` in order for
|
inherits :ref:`ref-classes-features_check` in order for
|
||||||
the requirement to actually work. If you are seeing this message, either
|
the requirement to actually work. If you are seeing this message, either
|
||||||
add ``inherit features_check`` to your recipe or remove the reference to
|
add ``inherit features_check`` to your recipe or remove the reference to
|
||||||
the variable if it is not needed.
|
the variable if it is not needed.
|
||||||
|
@ -634,7 +634,7 @@ Errors and Warnings
|
||||||
- ``<recipename>: recipe defines ALTERNATIVE:<packagename> but doesn't inherit update-alternatives. This might fail during do_rootfs later! [missing-update-alternatives]``
|
- ``<recipename>: recipe defines ALTERNATIVE:<packagename> but doesn't inherit update-alternatives. This might fail during do_rootfs later! [missing-update-alternatives]``
|
||||||
|
|
||||||
This check ensures that if a recipe sets the :term:`ALTERNATIVE` variable that the
|
This check ensures that if a recipe sets the :term:`ALTERNATIVE` variable that the
|
||||||
recipe also inherits :ref:`update-alternatives <ref-classes-update-alternatives>` such
|
recipe also inherits :ref:`ref-classes-update-alternatives` such
|
||||||
that the alternative will be correctly set up. If you are seeing this message, either
|
that the alternative will be correctly set up. If you are seeing this message, either
|
||||||
add ``inherit update-alternatives`` to your recipe or remove the reference to the variable
|
add ``inherit update-alternatives`` to your recipe or remove the reference to the variable
|
||||||
if it is not needed.
|
if it is not needed.
|
||||||
|
@ -655,7 +655,7 @@ Errors and Warnings
|
||||||
- ``<packagename> contains perllocal.pod (<files>), should not be installed [perllocalpod]``
|
- ``<packagename> contains perllocal.pod (<files>), should not be installed [perllocalpod]``
|
||||||
|
|
||||||
``perllocal.pod`` is an index file of locally installed modules and so shouldn't be
|
``perllocal.pod`` is an index file of locally installed modules and so shouldn't be
|
||||||
installed by any distribution packages. The :ref:`cpan <ref-classes-cpan>` class
|
installed by any distribution packages. The :ref:`ref-classes-cpan` class
|
||||||
already sets ``NO_PERLLOCAL`` to stop this file being generated by most Perl recipes,
|
already sets ``NO_PERLLOCAL`` to stop this file being generated by most Perl recipes,
|
||||||
but if a recipe is using ``MakeMaker`` directly then they might not be doing this
|
but if a recipe is using ``MakeMaker`` directly then they might not be doing this
|
||||||
correctly. This check ensures that perllocal.pod is not in any package in order to
|
correctly. This check ensures that perllocal.pod is not in any package in order to
|
||||||
|
|
|
@ -233,7 +233,7 @@ is available via the :term:`TOPDIR` variable.
|
||||||
-----------------------
|
-----------------------
|
||||||
|
|
||||||
The OpenEmbedded build system creates this directory when you enable
|
The OpenEmbedded build system creates this directory when you enable
|
||||||
build history via the :ref:`buildhistory <ref-classes-buildhistory>` class file. The directory
|
build history via the :ref:`ref-classes-buildhistory` class file. The directory
|
||||||
organizes build information into image, packages, and SDK
|
organizes build information into image, packages, and SDK
|
||||||
subdirectories. For information on the build history feature, see the
|
subdirectories. For information on the build history feature, see the
|
||||||
":ref:`dev-manual/build-quality:maintaining build output quality`"
|
":ref:`dev-manual/build-quality:maintaining build output quality`"
|
||||||
|
@ -375,7 +375,7 @@ remove the ``build/sstate-cache`` directory.
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
This directory stores the build statistics as generated by the
|
This directory stores the build statistics as generated by the
|
||||||
:ref:`buildstats <ref-classes-buildstats>` class.
|
:ref:`ref-classes-buildstats` class.
|
||||||
|
|
||||||
.. _structure-build-tmp-cache:
|
.. _structure-build-tmp-cache:
|
||||||
|
|
||||||
|
|
|
@ -78,9 +78,9 @@ task runs with the current working directory set to
|
||||||
``${``\ :term:`B`\ ``}``.
|
``${``\ :term:`B`\ ``}``.
|
||||||
|
|
||||||
Recipes implementing this task should inherit the
|
Recipes implementing this task should inherit the
|
||||||
:ref:`deploy <ref-classes-deploy>` class and should write the output
|
:ref:`ref-classes-deploy` class and should write the output
|
||||||
to ``${``\ :term:`DEPLOYDIR`\ ``}``, which is not to be
|
to ``${``\ :term:`DEPLOYDIR`\ ``}``, which is not to be
|
||||||
confused with ``${DEPLOY_DIR}``. The :ref:`deploy <ref-classes-deploy>` class sets up
|
confused with ``${DEPLOY_DIR}``. The :ref:`ref-classes-deploy` class sets up
|
||||||
:ref:`ref-tasks-deploy` as a shared state (sstate) task that can be accelerated
|
:ref:`ref-tasks-deploy` as a shared state (sstate) task that can be accelerated
|
||||||
through sstate use. The sstate mechanism takes care of copying the
|
through sstate use. The sstate mechanism takes care of copying the
|
||||||
output from ``${DEPLOYDIR}`` to ``${DEPLOY_DIR_IMAGE}``.
|
output from ``${DEPLOYDIR}`` to ``${DEPLOY_DIR_IMAGE}``.
|
||||||
|
@ -102,7 +102,7 @@ Adding :ref:`ref-tasks-deploy` after other tasks works the same way.
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
You do not need to add ``before do_build`` to the ``addtask`` command
|
You do not need to add ``before do_build`` to the ``addtask`` command
|
||||||
(though it is harmless), because the :ref:`base <ref-classes-base>` class contains the following::
|
(though it is harmless), because the :ref:`ref-classes-base` class contains the following::
|
||||||
|
|
||||||
do_build[recrdeptask] += "do_deploy"
|
do_build[recrdeptask] += "do_deploy"
|
||||||
|
|
||||||
|
@ -225,7 +225,7 @@ section in the Yocto Project Overview and Concepts Manual.
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
Runs QA checks on packaged files. For more information on these checks,
|
Runs QA checks on packaged files. For more information on these checks,
|
||||||
see the :ref:`insane <ref-classes-insane>` class.
|
see the :ref:`ref-classes-insane` class.
|
||||||
|
|
||||||
.. _ref-tasks-package_write_deb:
|
.. _ref-tasks-package_write_deb:
|
||||||
|
|
||||||
|
@ -406,7 +406,7 @@ Installs the files into the individual recipe specific sysroots (i.e.
|
||||||
``recipe-sysroot`` and ``recipe-sysroot-native`` under
|
``recipe-sysroot`` and ``recipe-sysroot-native`` under
|
||||||
``${``\ :term:`WORKDIR`\ ``}`` based upon the
|
``${``\ :term:`WORKDIR`\ ``}`` based upon the
|
||||||
dependencies specified by :term:`DEPENDS`). See the
|
dependencies specified by :term:`DEPENDS`). See the
|
||||||
":ref:`staging <ref-classes-staging>`" class for more information.
|
":ref:`ref-classes-staging`" class for more information.
|
||||||
|
|
||||||
.. _ref-tasks-rm_work:
|
.. _ref-tasks-rm_work:
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -49,8 +49,7 @@ build system applies them against ``local.conf`` and ``auto.conf``:
|
||||||
:term:`ESDK_CLASS_INHERIT_DISABLE` to disable these classes is the typical
|
:term:`ESDK_CLASS_INHERIT_DISABLE` to disable these classes is the typical
|
||||||
method to disable classes that are problematic or unnecessary in the SDK
|
method to disable classes that are problematic or unnecessary in the SDK
|
||||||
context. The default value disables the
|
context. The default value disables the
|
||||||
:ref:`buildhistory <ref-classes-buildhistory>` and
|
:ref:`ref-classes-buildhistory` and :ref:`ref-classes-icecc` classes.
|
||||||
:ref:`icecc <ref-classes-icecc>` classes.
|
|
||||||
|
|
||||||
Additionally, the contents of ``conf/sdk-extra.conf``, when present, are
|
Additionally, the contents of ``conf/sdk-extra.conf``, when present, are
|
||||||
appended to the end of ``conf/local.conf`` within the produced SDK,
|
appended to the end of ``conf/local.conf`` within the produced SDK,
|
||||||
|
|
|
@ -1079,9 +1079,8 @@ does not include complete instructions for building the software.
|
||||||
Instead, common functionality is encapsulated in classes inherited with
|
Instead, common functionality is encapsulated in classes inherited with
|
||||||
the ``inherit`` directive. This technique leaves the recipe to describe
|
the ``inherit`` directive. This technique leaves the recipe to describe
|
||||||
just the things that are specific to the software being built. There is
|
just the things that are specific to the software being built. There is
|
||||||
a :ref:`base <ref-classes-base>` class that
|
a :ref:`ref-classes-base` class that is implicitly inherited by all recipes
|
||||||
is implicitly inherited by all recipes and provides the functionality
|
and provides the functionality that most recipes typically need.
|
||||||
that most recipes typically need.
|
|
||||||
|
|
||||||
The remainder of this section presents information useful when working
|
The remainder of this section presents information useful when working
|
||||||
with recipes.
|
with recipes.
|
||||||
|
|
|
@ -100,12 +100,11 @@ the following types of tests:
|
||||||
different configurations, such as different init systems. The
|
different configurations, such as different init systems. The
|
||||||
Autobuilder tests literally hundreds of configurations and targets.
|
Autobuilder tests literally hundreds of configurations and targets.
|
||||||
|
|
||||||
- *Sanity Checks During the Build Process:* Tests initiated through
|
- *Sanity Checks During the Build Process:* Tests initiated through the
|
||||||
the :ref:`insane <ref-classes-insane>`
|
:ref:`ref-classes-insane` class. These checks ensure the output of the
|
||||||
class. These checks ensure the output of the builds are correct.
|
builds are correct. For example, does the ELF architecture in the
|
||||||
For example, does the ELF architecture in the generated binaries
|
generated binaries match the target system? ARM binaries would not work
|
||||||
match the target system? ARM binaries would not work in a MIPS
|
in a MIPS system!
|
||||||
system!
|
|
||||||
|
|
||||||
- *Build Performance Testing:* Tests whether or not commonly used steps
|
- *Build Performance Testing:* Tests whether or not commonly used steps
|
||||||
during builds work efficiently and avoid regressions. Tests to time
|
during builds work efficiently and avoid regressions. Tests to time
|
||||||
|
@ -121,7 +120,8 @@ the following types of tests:
|
||||||
|
|
||||||
$ bitbake image -c testsdkext
|
$ bitbake image -c testsdkext
|
||||||
|
|
||||||
The tests utilize the :ref:`testsdkext <ref-classes-testsdk>` class and the ``do_testsdkext`` task.
|
The tests utilize the :ref:`ref-classes-testsdk` class and the
|
||||||
|
``do_testsdkext`` task.
|
||||||
|
|
||||||
- *Feature Testing:* Various scenario-based tests are run through the
|
- *Feature Testing:* Various scenario-based tests are run through the
|
||||||
:ref:`OpenEmbedded Self test (oe-selftest) <ref-manual/release-process:Testing and Quality Assurance>`. We test oe-selftest on each of the main distributions
|
: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:
|
||||||
|
|
||||||
$ bitbake image -c testimage
|
$ bitbake image -c testimage
|
||||||
|
|
||||||
The tests utilize the :ref:`testimage <ref-classes-testimage>`
|
The tests utilize the :ref:`ref-classes-testimage`
|
||||||
class and the :ref:`ref-tasks-testimage` task.
|
class and the :ref:`ref-tasks-testimage` task.
|
||||||
|
|
||||||
- *Layer Testing:* The Autobuilder has the possibility to test whether
|
- *Layer Testing:* The Autobuilder has the possibility to test whether
|
||||||
|
@ -151,7 +151,7 @@ the following types of tests:
|
||||||
|
|
||||||
$ bitbake image -c testsdk
|
$ bitbake image -c testsdk
|
||||||
|
|
||||||
The tests utilize the :ref:`testsdk <ref-classes-testsdk>` class and
|
The tests utilize the :ref:`ref-classes-testsdk` class and
|
||||||
the ``do_testsdk`` task.
|
the ``do_testsdk`` task.
|
||||||
|
|
||||||
- *Unit Testing:* Unit tests on various components of the system run
|
- *Unit Testing:* Unit tests on various components of the system run
|
||||||
|
|
|
@ -206,7 +206,7 @@ are general setup steps that are run once and include:
|
||||||
|
|
||||||
#. Set up any :term:`buildtools` tarball if configured.
|
#. Set up any :term:`buildtools` tarball if configured.
|
||||||
|
|
||||||
#. Call "buildhistory-init" if :ref:`buildhistory <ref-classes-buildhistory>` is configured.
|
#. Call "buildhistory-init" if :ref:`ref-classes-buildhistory` is configured.
|
||||||
|
|
||||||
For each step that is configured in ``config.json``, it will perform the
|
For each step that is configured in ``config.json``, it will perform the
|
||||||
following:
|
following:
|
||||||
|
|
Loading…
Reference in New Issue
Block a user