1
0
mirror of https://git.yoctoproject.org/poky synced 2026-06-04 02:00:04 +00:00

bitbake: bitbake-user-manual: add addpylib and BB_GLOBAL_PYMODULES

New directive and variable for 2.4.

(Bitbake rev: 1b74a7b71e6c8a034163b57ef4e13b4a58c1f844)

Signed-off-by: Paul Eggleton <bluelightning@bluelightning.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Paul Eggleton
2023-04-22 15:05:22 +12:00
committed by Richard Purdie
parent 54f3339f38
commit a91fb4ff74
2 changed files with 26 additions and 0 deletions
@@ -1972,6 +1972,24 @@ looking at the source code of the ``bb`` module, which is in
the commonly used functions ``bb.utils.contains()`` and the commonly used functions ``bb.utils.contains()`` and
``bb.utils.mkdirhier()``, which come with docstrings. ``bb.utils.mkdirhier()``, which come with docstrings.
Extending Python Library Code
-----------------------------
If you wish to add your own Python library code (e.g. to provide
functions/classes you can use from Python functions in the metadata)
you can do so from any layer using the ``addpylib`` directive.
This directive is typically added to your layer configuration (
``conf/layer.conf``) although it will be handled in any ``.conf`` file.
Usage is of the form::
addpylib <directory> <namespace>
Where <directory> specifies the directory to add to the library path.
The specified <namespace> is imported automatically, and if the imported
module specifies an attribute named ``BBIMPORTS``, that list of
sub-modules is iterated and imported too.
Testing and Debugging BitBake Python code Testing and Debugging BitBake Python code
----------------------------------------- -----------------------------------------
@@ -348,6 +348,14 @@ overview of their function and contents.
For example usage, see :term:`BB_GIT_SHALLOW`. For example usage, see :term:`BB_GIT_SHALLOW`.
:term:`BB_GLOBAL_PYMODULES`
Specifies the list of Python modules to place in the global namespace.
It is intended that only the core layer should set this and it is meant
to be a very small list, typically just ``os`` and ``sys``.
:term:`BB_GLOBAL_PYMODULES` is expected to be set before the first
``addpylib`` directive.
See also ":ref:`bitbake-user-manual/bitbake-user-manual-metadata:extending python library code`".
:term:`BB_HASHCHECK_FUNCTION` :term:`BB_HASHCHECK_FUNCTION`
Specifies the name of the function to call during the "setscene" part Specifies the name of the function to call during the "setscene" part
of the task's execution in order to validate the list of task hashes. of the task's execution in order to validate the list of task hashes.