mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 21:09:03 +02:00
ref-manual: classes: fix bin_package description
The previous bin_package description was confusing: it would instruct to use the git fetcher to extract the content of an RPM package using the `subpath` option - but that's not possible as the git fetcher can be used to clone a repository but not to do the extraction. Update the description by telling what it really does and what it doesn't do, and by giving an HTTPS+RPM example. Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de> (From yocto-docs rev: e201ee883c152555ef4c9bd3fa31c3eb96f6dc2f) Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> (cherry picked from commit 305f024bf99ba02b153eed0cebe3d36594868497) Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Steve Sakoman <steve@sakoman.com>
This commit is contained in:
parent
e4ba8cd69f
commit
0062627f2f
|
@ -153,27 +153,38 @@ software that includes bash-completion data.
|
||||||
``bin_package``
|
``bin_package``
|
||||||
===============
|
===============
|
||||||
|
|
||||||
The :ref:`ref-classes-bin-package` class is a helper class for recipes that extract the
|
The :ref:`ref-classes-bin-package` class is a helper class for recipes, that
|
||||||
contents of a binary package (e.g. an RPM) and install those contents
|
disables the :ref:`ref-tasks-configure` and :ref:`ref-tasks-compile` tasks and
|
||||||
rather than building the binary from source. The binary package is
|
copies the content of the :term:`S` directory into the :term:`D` directory. This
|
||||||
extracted and new packages in the configured output package format are
|
is useful for installing binary packages (e.g. RPM packages) by passing the
|
||||||
created. Extraction and installation of proprietary binaries is a good
|
package in the :term:`SRC_URI` variable and inheriting this class.
|
||||||
example use for this class.
|
|
||||||
|
For RPMs and other packages that do not contain a subdirectory, you should set
|
||||||
|
the :term:`SRC_URI` option ``subdir`` to :term:`BP` so that the contents are
|
||||||
|
extracted to the directory expected by the default value of :term:`S`. For
|
||||||
|
example::
|
||||||
|
|
||||||
|
SRC_URI = "https://example.com/downloads/somepackage.rpm;subdir=${BP}"
|
||||||
|
|
||||||
|
This class can also be used for tarballs. For example::
|
||||||
|
|
||||||
|
SRC_URI = "file://somepackage.tar.xz;subdir=${BP}"
|
||||||
|
|
||||||
|
The :ref:`ref-classes-bin-package` class will copy the extracted content of the
|
||||||
|
tarball from :term:`S` to :term:`D`.
|
||||||
|
|
||||||
|
This class assumes that the content of the package as installed in :term:`S`
|
||||||
|
mirrors the expected layout once installed on the target, which is generally the
|
||||||
|
case for binary packages. For example, an RPM package for a library would
|
||||||
|
usually contain the ``usr/lib`` directory, and should be extracted to
|
||||||
|
``${S}/usr/lib/<library>.so.<version>`` to be installed in :term:`D` correctly.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
For RPMs and other packages that do not contain a subdirectory, you
|
The extraction of the package passed in :term:`SRC_URI` is not handled by the
|
||||||
should specify an appropriate fetcher parameter to point to the
|
:ref:`ref-classes-bin-package` class, but rather by the appropriate
|
||||||
subdirectory. For example, if BitBake is using the Git fetcher (``git://``),
|
:ref:`fetcher <bitbake-user-manual/bitbake-user-manual-fetching:fetchers>`
|
||||||
the "subpath" parameter limits the checkout to a specific subpath
|
depending on the file extension.
|
||||||
of the tree. Here is an example where ``${BP}`` is used so that the files
|
|
||||||
are extracted into the subdirectory expected by the default value of
|
|
||||||
:term:`S`::
|
|
||||||
|
|
||||||
SRC_URI = "git://example.com/downloads/somepackage.rpm;branch=main;subpath=${BP}"
|
|
||||||
|
|
||||||
See the ":ref:`bitbake-user-manual/bitbake-user-manual-fetching:fetchers`" section in the BitBake User Manual for
|
|
||||||
more information on supported BitBake Fetchers.
|
|
||||||
|
|
||||||
.. _ref-classes-binconfig:
|
.. _ref-classes-binconfig:
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user