subtree updates
meta-arm: 14c7e5b336..3b7347cd67:
Jon Mason (6):
CI: Remove host bitbake variables
arm: add Mickledore to layer compat string
CI: Add packages for opencsd and gator-daemon to base build
CI: add common fvp yml file
arm/opencsd: update to version 1.3.1
arm/gator-daemon: update to v7.8.0
Jose Quaresma (2):
optee-ftpm/optee-os: add missing space in EXTRA_OEMAKE
optee-os-ts: avoid using escape chars in EXTRA_OEMAKE
Mohamed Omar Asaker (4):
Revert "arm-bsp/trusted-firmware-m: corstone1000: secure debug code checkout from yocto"
Revert "arm-bsp/trusted-firmware-m: corstone1000: bump tfm SHA"
arm-bsp/trusted-firmware-m: corstone1000 support FMP image info
arm-bsp/corstone1000: add msd configs for fvp
Ross Burton (5):
arm/hafnium: add missing Upstream-Status
arm-bsp/hafnium: add missing Upstream-Status
arm-bsp/linux-arm64-ack: fix malformed Upstream-Status tag
CI: add documentation job
CI: track meta-openembedded's langdale branch
Rui Miguel Silva (2):
arm/trusted-services: port crypto config
arm-bsp/corstone1000: apply ts patch to psa crypto api test
Satish Kumar (1):
arm-bsp/trusted-service: corstone1000: esrt support
Vishnu Banavath (4):
runfvp: corstone1000: add mmc card configuration
meta-arm-bsp/doc: add readthedocs for corstone1000
arm-bsp/optee: register DRAM1 for N1SDP target
arm-bsp:optee: enable optee test for N1SDP target
meta-raspberrypi: 722c51647c..a305f4804b:
Sung Gon Kim (1):
libcamera: rename bbappend to match any version
meta-openembedded: 8073ec2275..6ebff843cc:
Akash Hadke (1):
audit: Fix compile error for audit_2.8.5
Alex Kiernan (1):
lldpd: Upgrade 1.0.14 -> 1.0.15
Alexander Kanavin (3):
sip3: remove the recipe
python3-wxgtk4: skip the recipe
python3-yappi: mark as incompatible with python 3.11
Bhupesh Sharma (1):
android-tools-conf-configfs: Allow handling two or more UDC controllers
Eero Aaltonen (1):
valijson: use install task from CMakeLists.txt
Etienne Cordonnier (1):
uutils-coreutils: upgrade 0.0.15 -> 0.0.16
Gianfranco Costamagna (2):
vboxguestdrivers: upgrade 6.1.38 -> 7.0.0
vbxguestdrivers: upgrade 7.0.0 -> 7.0.2
Joshua Watt (3):
nginx: Add ipv6 support
iniparser: Add native support
libzip: Add native support
Khem Raj (3):
postfix: Upgrade to 3.7.3
msktutil: Add recipe
protobuf: Enable protoc binary in nativesdk
Leon Anavi (7):
python3-cheetah: Upgrade 3.2.6 -> 3.2.6.post1
python3-dill: Upgrade 0.3.5.1 -> 0.3.6
python3-pythonping: Upgrade 1.1.3 -> 1.1.4
python3-colorama: Upgrade 0.4.5 -> 0.4.6
python3-pint: Upgrade 0.19.2 -> 0.20
python3-traitlets: Upgrade 5.4.0 -> 5.5.0
python3-py-cpuinfo: Upgrade 8.0.0 -> 9.0.0
Markus Volk (4):
perfetto: build libperfetto
libcamera: upgrade -> 0.0.1
gtk-vnc: add recipe
spice-gtk: add recipe
Meier Boas (1):
jwt-cpp: add recipe
Ovidiu Panait (1):
syzkaller: add recipe and selftest for syzkaller fuzzing
Peter Marko (2):
cpputest: remove dev package dependency
cpputest: add possibility to build extensions
Robert Joslyn (1):
fwupd: Fix plugin_gpio PACKAGECONFIG
Sebastian Trahm (1):
Add recipe for python3-pytest-json-report
Tim Orling (5):
libmime-types-perl: upgrade 2.17 -> 2.22
libcompress-raw*-perl: move from libio/compress-*
libio-compress*-perl: cleanup; fixes
libcompress-raw-*-perl: cleanup; fixes
packagegroup-meta-perl: mv libcompress-raw-*-perl
Vincent Davis Jr (2):
libglvnd: add new recipe libglvnd v1.5.0
xf86-video-amdgpu: add new recipe xf86-video-amdgpu
Wang Mingyu (36):
bats: upgrade 1.8.0 -> 1.8.2
ctags: upgrade 5.9.20221009.0 -> 5.9.20221016.0
fvwm: upgrade 2.6.9 -> 2.7.0
makedumpfile: upgrade 1.7.1 -> 1.7.2
sanlock: upgrade 3.8.4 -> 3.8.5
python3-astroid: upgrade 2.12.11 -> 2.12.12
python3-charset-normalizer: upgrade 2.1.1 -> 3.0.0
python3-google-api-python-client: upgrade 2.64.0 -> 2.65.0
python3-google-auth: upgrade 2.12.0 -> 2.13.0
python3-grpcio-tools: upgrade 1.49.1 -> 1.50.0
python3-grpcio: upgrade 1.49.1 -> 1.50.0
python3-huey: upgrade 2.4.3 -> 2.4.4
python3-incremental: upgrade 21.3.0 -> 22.10.0
python3-luma-core: upgrade 2.3.1 -> 2.4.0
python3-oauthlib: upgrade 3.2.1 -> 3.2.2
python3-pandas: upgrade 1.5.0 -> 1.5.1
python3-pastedeploy: upgrade 2.1.1 -> 3.0.1
python3-pika: upgrade 1.3.0 -> 1.3.1
python3-portalocker: upgrade 2.5.1 -> 2.6.0
python3-protobuf: upgrade 4.21.7 -> 4.21.8
python3-pyjwt: upgrade 2.5.0 -> 2.6.0
python3-pymongo: upgrade 4.2.0 -> 4.3.2
python3-pywbemtools: upgrade 1.0.0 -> 1.0.1
python3-robotframework: upgrade 5.0.1 -> 6.0
python3-socketio: upgrade 5.7.1 -> 5.7.2
python3-sqlalchemy: upgrade 1.4.41 -> 1.4.42
tracker-miners: upgrade 3.2.1 -> 3.4.1
tracker: upgrade 3.4.0 -> 3.4.1
wolfssl: upgrade 5.5.1 -> 5.5.2
cglm: upgrade 0.8.5 -> 0.8.7
ctags: upgrade 5.9.20221016.0 -> 5.9.20221023.0
flatbuffers: upgrade 22.9.29 -> 22.10.26
function2: upgrade 4.2.1 -> 4.2.2
poco: upgrade 1.12.2 -> 1.12.3
thingsboard-gateway: upgrade 3.1 -> 3.2
grpc: upgrade 1.50.0 -> 1.50.1
Xiangyu Chen (1):
ipmitool: fix typo in .bb file's comments, using = instead of =?
Zheng Qiu (1):
jq: improve ptest and disable valgrind by default
zhengruoqin (5):
tcpslice: upgrade 1.5 -> 1.6
tio: upgrade 2.1 -> 2.2
python3-stevedore: upgrade 4.0.1 -> 4.1.0
python3-xxhash: upgrade 3.0.0 -> 3.1.0
python3-zeroconf: upgrade 0.39.1 -> 0.39.2
meta-security: e8e7318189..2aa48e6f4e:
Armin Kuster (1):
kas-security-base.yml: make work again
Gowtham Suresh Kumar (1):
Update PARSEC recipe to latest v1.1.0 release
Michael Haener (1):
tpm2-openssl: update to 1.1.1
poky: 95c802b0be..482c493cf6:
Adrian Freihofer (3):
own-mirrors: add crate
buildconf: compare abspath
ref-manual: add wic command bootloader ptable option
Ahmad Fatoum (2):
kernel-fitimage: mangle slashes to underscores as late as possible
kernel-fitimage: skip FDT section creation for applicable symlinks
Alex Kiernan (4):
u-boot: Remove duplicate inherit of cml1
u-boot: Add savedefconfig task
rust: update 1.63.0 -> 1.64.0
cargo_common.bbclass: Fix typos
Alexander Kanavin (40):
rust-target-config: match riscv target names with what rust expects
rust: install rustfmt for riscv32 as well
unfs3: correct upstream version check
gnu-config: update to latest revision
llvm: update 14.0.6 -> 15.0.1
grep: update 3.7 -> 3.8
hdparm: update 9.64 -> 9.65
stress-ng: update 0.14.03 -> 0.14.06
vulkan: update 1.3.216.0 -> 1.3.224.1
wayland-utils: update 1.0.0 -> 1.1.0
libxft: update 2.3.4 -> 2.3.6
pinentry: update 1.2.0 -> 1.2.1
ovmf: upgrade edk2-stable202205 -> edk2-stable202208
cmake: update 3.24.0 -> 3.24.2
jquery: upgrade 3.6.0 -> 3.6.1
python3-dbus: upgrade 1.2.18 -> 1.3.2
python3-hatch-fancy-pypi-readme: add a recipe
python3-jsonschema: upgrade 4.9.1 -> 4.16.0
shadow: update 4.12.1 -> 4.12.3
lttng-modules: upgrade 2.13.4 -> 2.13.5
libsoup: upgrade 3.0.7 -> 3.2.0
libxslt: upgrade 1.1.35 -> 1.1.37
quilt: backport a patch to address grep 3.8 failures
python3: update 3.10.6 -> 3.11.0
cargo-update-recipe-crates.bbclass: add a class to generate SRC_URI crate lists from Cargo.lock
python3-bcrypt: convert to use cargo-update-recipe-crates class.
python3-cryptography: convert to cargo-update-recipe-crates class
groff: submit patches upstream
tcl: correct patch status
tcl: correct upstream version check
lttng-tools: submit determinism.patch upstream
cmake: drop qt4 patches
kea: submit patch upstream
argp-standalone: replace with a maintained fork
ovmf: correct patches status
go: submit patch upstream
libffi: submit patch upstream
go: update 1.19 -> 1.19.2
rust-common.bbclass: use built-in rust targets for -native builds
rust: submit a rewritten version of crossbeam_atomic.patch upstream
Andrew Geissler (1):
go: add support to build on ppc64le
Bartosz Golaszewski (1):
bluez5: add dbus to RDEPENDS
Bernhard Rosenkränzer (1):
cmake-native: Fix host tool contamination
Bruce Ashfield (3):
kern-tools: fix relative path processing
linux-yocto/5.19: update to v5.19.14
linux-yocto/5.15: update to v5.15.72
Changhyeok Bae (2):
ethtool: upgrade 5.19 -> 6.0
iproute2: upgrade 5.19.0 -> 6.0.0
Chen Qi (1):
openssl: export necessary env vars in SDK
Christian Eggers (1):
linux-firmware: split rtl8761 firmware
Claus Stovgaard (1):
gstreamer1.0-libav: fix errors with ffmpeg 5.x
Ed Tanous (1):
openssl: Upgrade 3.0.5 -> 3.0.7
Etienne Cordonnier (1):
mirrors.bbclass: use shallow tarball for binutils-native
Fabio Estevam (1):
go-mod.bbclass: Remove repeated word
Frank de Brabander (1):
cve-update-db-native: add timeout to urlopen() calls
Hitendra Prajapati (1):
openssl: CVE-2022-3358 Using a Custom Cipher with NID_undef may lead to NULL encryption
Jan-Simon Moeller (1):
buildtools-tarball: export certificates to python and curl
Jeremy Puhlman (1):
qemu-native: Add PACKAGECONFIG option for jack
Johan Korsnes (1):
bitbake: bitbake: user-manual: inform about spaces in :remove
Jon Mason (2):
linux-yocto: add efi entry for machine features
linux-yocto-dev: add qemuarmv5
Jose Quaresma (3):
kernel-yocto: improve fatal error messages of symbol_why.py
oeqa/selftest/archiver: Add multiconfig test for shared recipes
archiver: avoid using machine variable as it breaks multiconfig
Joshua Watt (3):
runqemu: Fix gl-es argument from causing other arguments to be ignored
qemu-helper-native: Re-write bridge helper as C program
runqemu: Do not perturb script environment
Justin Bronder (1):
bitbake: asyncrpc: serv: correct closed client socket detection
Kai Kang (1):
mesa: only apply patch to fix ALWAYS_INLINE for native
Keiya Nobuta (2):
gnutls: Unified package names to lower-case
create-spdx: Remove ";name=..." for downloadLocation
Khem Raj (3):
perf: Depend on native setuptools3
musl: Upgrade to latest master
mesa: Add native patch via a variable
Lee Chee Yang (2):
migration-guides/release-notes-4.1.rst: update Repositories / Downloads
migration-guides/release-notes-4.1.rst: update Repositories / Downloads
Leon Anavi (1):
python3-manifest.json: Move urllib to netclient
Liam Beguin (1):
meson: make wrapper options sub-command specific
Luca Boccassi (1):
systemd: add systemd-creds and systemd-cryptenroll to systemd-extra-utils
Marek Vasut (1):
bluez5: Point hciattach bcm43xx firmware search path to /lib/firmware
Mark Asselstine (2):
bitbake: tests: bb.tests.fetch.URLHandle: add 2 new tests
bitbake: bitbake: bitbake-layers: checkout layer(s) branch when clone exists
Mark Hatle (2):
insane.bbclass: Allow hashlib version that only accepts on parameter
bitbake: utils/ply: Update md5 to better report errors with hashlib
Markus Volk (2):
wayland-protocols: upgrade 1.26 -> 1.27
mesa: update 22.2.0 -> 22.2.2
Martin Jansa (3):
vulkan-samples: add lfs=0 to SRC_URI to avoid git smudge errors in do_unpack
externalsrc.bbclass: fix git repo detection
cargo-update-recipe-crates: small improvements
Maxim Uvarov (2):
wic: add UEFI kernel as UEFI stub
wic: bootimg-efi: implement --include-path
Michael Opdenacker (11):
manuals: updates for building on Windows (WSL 2)
ref-manual: classes.rst: add links to all references to a class
poky.conf: remove Ubuntu 21.10
bitbake: doc: bitbake-user-manual: expand description of BB_PRESSURE_MAX variables
bitbake: bitbake-user-manual: details about variable flags starting with underscore
Documentation/README: formalize guidelines for external link syntax
manuals: replace "_" by "__" in external links
manuals: stop referring to the meta-openembedded repo from GitHub
manuals: add missing references to SDKMACHINE and SDK_ARCH
manuals: use references to the "Build Directory" term
create-spdx.bbclass: remove unused SPDX_INCLUDE_PACKAGED
Mikko Rapeli (6):
os-release: replace DISTRO_CODENAME with VERSION_CODENAME
os-release: add HOMEPAGE and link to documentation
ref-manual: variables.rst: add documentation for CVE_VERSION
ref-manual: classes.rst: improve documentation for cve-check.bbclass
dev-manual: common-tasks.rst: add regular updates and CVE scans to security best practices
dev-manual: common-tasks.rst: refactor and improve "Checking for Vulnerabilities" section
Ming Liu (1):
dropbear: add pam to PACKAGECONFIG
Mingli Yu (1):
grub: disable build on armv7ve/a with hardfp
Oliver Lang (2):
bitbake: cooker: fix a typo
bitbake: runqueue: fix a typo
Pablo Saavedra Rodi?o (1):
weston: update 10.0.2 -> 11.0.0
Paul Eggleton (2):
install-buildtools: support buildtools-make-tarball and update to 4.1
ref-manual: add info on buildtools-make-tarball
Peter Bergin (1):
gptfdisk: remove warning message from target system
Peter Kjellerstedt (3):
gcc: Allow -Wno-error=poison-system-directories to take effect
base-passwd: Update to 3.6.1
externalsrc.bbclass: Remove a trailing slash from ${B}
Qiu, Zheng (2):
tiff: fix a typo for CVE-2022-2953.patch
valgrind: update to 3.20.0
Quentin Schulz (1):
docs: add support for langdale (4.1) release
Richard Purdie (4):
openssl: Fix SSL_CERT_FILE to match ca-certs location
bitbake: tests/fetch: Allow handling of a file:// url within a submodule
patchelf: upgrade 0.15.0 -> 0.16.1
lttng-modules: upgrade 2.13.5 -> 2.13.7
Robert Joslyn (1):
curl: Update 7.85.0 to 7.86.0
Ross Burton (26):
populate_sdk_base: ensure ptest-pkgs pulls in ptest-runner
scripts/oe-check-sstate: cleanup
scripts/oe-check-sstate: force build to run for all targets, specifically populate_sysroot
externalsrc: move back to classes
opkg-utils: use a git clone, not a dynamic snapshot
oe/packagemanager/rpm: don't leak file objects
zlib: use .gz archive and set a PREMIRROR
glib-2.0: fix rare GFileInfo test case failure
lighttpd: fix CVE-2022-41556
acpid: upgrade 2.0.33 -> 2.0.34
python3-hatchling: upgrade 1.9.0 -> 1.10.0
pango: upgrade 1.50.9 -> 1.50.10
piglit: upgrade to latest revision
lsof: upgrade 4.95.0 -> 4.96.3
zlib: do out-of-tree builds
zlib: upgrade 1.2.12 -> 1.2.13
libx11: apply the fix for CVE-2022-3554
xserver-xorg: ignore CVE-2022-3553 as it is XQuartz-specific
xserver-xorg: backport fixes for CVE-2022-3550 and CVE-2022-3551
tiff: fix a number of CVEs
qemu: backport the fix for CVE-2022-3165
bitbake: fetch2/git: don't set core.fsyncobjectfiles=0
sanity: check for GNU tar specifically
expat: upgrade to 2.5.0
oeqa/target/ssh: add ignore_status argument to run()
oeqa/runtime/dnf: rewrite test_dnf_installroot_usrmerge
Sakib Sajal (1):
go: update 1.19.2 -> 1.19.3
Sean Anderson (6):
uboot-sign: Fix using wrong KEY_REQ_ARGS
kernel: Clear SYSROOT_DIRS instead of replacing sysroot_stage_all
kernel-fitimage: Use KERNEL_OUTPUT_DIR where appropriate
uboot-sign: Use bitbake variables directly
uboot-sign: Split off kernel-fitimage variables
u-boot: Rework signing to remove interdependencies
Sergei Zhmylev (2):
wic: implement binary repeatable disk identifiers
wic: honor the SOURCE_DATE_EPOCH in case of updated fstab
Teoh Jay Shen (1):
vim: Upgrade 9.0.0598 -> 9.0.0614
Thomas Perrot (2):
psplash: add psplash-default in rdepends
xserver-xorg: move some recommended dependencies in required
Tim Orling (23):
python3-cryptography: upgrade 37.0.4 -> 38.0.1
python3-cryptography-vectors: upgrade 37.0.4 -> 38.0.1
python3-certifi: upgrade 2022.9.14 -> 2022.9.24
python3-hypothesis: upgrade 6.54.5 -> 6.56.1
python3-pyopenssl: upgrade 22.0.0 -> 22.1.0
python3-bcrypt: upgrade 3.2.2 -> 4.0.0
python3-sphinx: upgrade 5.1.1 -> 5.2.3
python3-setuptools-rust: upgrade 1.5.1 -> 1.5.2
python3-iso8601: upgrade 1.0.2 -> 1.1.0
python3-poetry-core: upgrade 1.0.8 -> 1.3.2
git: upgrade 2.37.3 -> 2.38.1
vim: upgrade 9.0.0614 -> 9.0.0820
python3-mako: upgrade 1.2.2 -> 1.2.3
python3-bcrypt: upgrade 4.0.0 -> 4.0.1
python3-cryptography{-vectors}: 38.0.1 -> 38.0.3
python3-psutil: upgrade 5.9.2 -> 5.9.3
python3-pytest: upgrade 7.1.3 -> 7.2.0
python3-pytest-subtests: upgrade 0.8.0 -> 0.9.0
python3-hypothesis: upgrade 6.56.1 -> 6.56.4
python3-more-itertools: upgrade 8.14.0 -> 9.0.0
python3-pytz: upgrade 2022.4 -> 2022.6
python3-zipp: upgrade 3.9.0 -> 3.10.0
python3-sphinx: upgrade 5.2.3 -> 5.3.0
Vincent Davis Jr (1):
linux-firmware: package amdgpu firmware
Vyacheslav Yurkov (1):
overlayfs: Allow not used mount points
Xiangyu Chen (1):
linux-yocto-dev: add qemuarm64
Yan Xinkuan (1):
bc: Add ptest.
ciarancourtney (1):
wic: swap partitions are not added to fstab
wangmy (32):
init-system-helpers: upgrade 1.64 -> 1.65.2
meson: upgrade 0.63.2 -> 0.63.3
mtools: upgrade 4.0.40 -> 4.0.41
dbus: upgrade 1.14.0 -> 1.14.4
ifupdown: upgrade 0.8.37 -> 0.8.39
openssh: upgrade 9.0p1 -> 9.1p1
python3-hatchling: upgrade 1.10.0 -> 1.11.0
u-boot: upgrade 2022.07 -> 2022.10
python3-git: upgrade 3.1.27 -> 3.1.28
python3-importlib-metadata: upgrade 4.12.0 -> 5.0.0
gnutls: upgrade 3.7.7 -> 3.7.8
gsettings-desktop-schemas: upgrade 42.0 -> 43.0
harfbuzz: upgrade 5.1.0 -> 5.3.0
libcap: upgrade 2.65 -> 2.66
libical: upgrade 3.0.14 -> 3.0.15
libva: upgrade 2.15.0 -> 2.16.0
libva-utils: upgrade 2.15.0 -> 2.16.0
powertop: upgrade 2.14 -> 2.15
numactl: upgrade 2.0.15 -> 2.0.16
python3-pytz: upgrade 2022.2.1 -> 2022.4
python3-zipp: upgrade 3.8.1 -> 3.9.0
repo: upgrade 2.29.2 -> 2.29.3
sqlite3: upgrade 3.39.3 -> 3.39.4
wpebackend-fdo: upgrade 1.12.1 -> 1.14.0
xkeyboard-config: upgrade 2.36 -> 2.37
xz: upgrade 5.2.6 -> 5.2.7
libksba: upgrade 1.6.0 -> 1.6.2
libsdl2: upgrade 2.24.0 -> 2.24.1
libwpe: upgrade 1.12.3 -> 1.14.0
lttng-ust: upgrade 2.13.4 -> 2.13.5
btrfs-tools: upgrade 5.19.1 -> 6.0
lighttpd: upgrade 1.4.66 -> 1.4.67
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I3322dd0057da9f05bb2ba216fdcda3f569c0493b
diff --git a/poky/documentation/ref-manual/classes.rst b/poky/documentation/ref-manual/classes.rst
index cd5a516..3b33783 100644
--- a/poky/documentation/ref-manual/classes.rst
+++ b/poky/documentation/ref-manual/classes.rst
@@ -37,7 +37,7 @@
``allarch.bbclass``
===================
-The ``allarch`` class is inherited by recipes that do not produce
+The :ref:`allarch <ref-classes-allarch>` class is inherited by recipes that do not produce
architecture-specific output. The class disables functionality that is
normally needed for recipes that produce executable binaries (such as
building the cross-compiler and a C library as pre-requisites, and
@@ -49,7 +49,7 @@
produce packages that depend on tunings through use of the
:term:`RDEPENDS` and
:term:`TUNE_PKGARCH` variables, should never be
- configured for all architectures using ``allarch``. This is the case
+ configured for all architectures using :ref:`allarch <ref-classes-allarch>`. This is the case
even if the recipes do not produce architecture-specific output.
Configuring such recipes for all architectures causes the
@@ -63,17 +63,17 @@
functionality needed for recipes that produce executable output. If your
recipe, for example, only produces packages that contain configuration
files, media files, or scripts (e.g. Python and Perl), then it should
-inherit the ``allarch`` class.
+inherit the :ref:`allarch <ref-classes-allarch>` class.
.. _ref-classes-archiver:
``archiver.bbclass``
====================
-The ``archiver`` class supports releasing source code and other
+The :ref:`archiver <ref-classes-archiver>` class supports releasing source code and other
materials with the binaries.
-For more details on the source archiver, see the
+For more details on the source :ref:`archiver <ref-classes-archiver>`, see the
":ref:`dev-manual/common-tasks:maintaining open source license compliance during your product's lifecycle`"
section in the Yocto Project Development Tasks Manual. You can also see
the :term:`ARCHIVER_MODE` variable for information
@@ -84,7 +84,7 @@
``autotools*.bbclass``
======================
-The ``autotools*`` classes support packages built with the
+The :ref:`autotools* <ref-classes-autotools>` classes support packages built with the
`GNU Autotools <https://en.wikipedia.org/wiki/GNU_Autotools>`__.
The ``autoconf``, ``automake``, and ``libtool`` packages bring
@@ -96,13 +96,13 @@
":ref:`dev-manual/common-tasks:autotooled package`" section
in the Yocto Project Development Tasks Manual.
-By default, the ``autotools*`` classes use out-of-tree builds (i.e.
+By default, the :ref:`autotools* <ref-classes-autotools>` classes use out-of-tree builds (i.e.
``autotools.bbclass`` building with ``B != S``).
If the software being built by a recipe does not support using
out-of-tree builds, you should have the recipe inherit the
-``autotools-brokensep`` class. The ``autotools-brokensep`` class behaves
-the same as the ``autotools`` class but builds with :term:`B`
+:ref:`autotools-brokensep <ref-classes-autotools>` class. The :ref:`autotools-brokensep <ref-classes-autotools>` class behaves
+the same as the :ref:`autotools <ref-classes-autotools>` class but builds with :term:`B`
== :term:`S`. This method is useful when out-of-tree build
support is either not present or is broken.
@@ -112,7 +112,7 @@
all possible.
It's useful to have some idea of how the tasks defined by the
-``autotools*`` classes work and what they do behind the scenes.
+:ref:`autotools* <ref-classes-autotools>` classes work and what they do behind the scenes.
- :ref:`ref-tasks-configure` --- regenerates the
configure script (using ``autoreconf``) and then launches it with a
@@ -133,7 +133,7 @@
``base.bbclass``
================
-The ``base`` class is special in that every ``.bb`` file implicitly
+The :ref:`base <ref-classes-base>` class is special in that every ``.bb`` file implicitly
inherits the class. This class contains definitions for standard basic
tasks such as fetching, unpacking, configuring (empty by default),
compiling (runs any ``Makefile`` present), installing (empty by default)
@@ -160,7 +160,7 @@
``bin_package.bbclass``
=======================
-The ``bin_package`` class is a helper class for recipes that extract the
+The :ref:`bin_package <ref-classes-bin-package>` class is a helper class for recipes that extract the
contents of a binary package (e.g. an RPM) and install those contents
rather than building the binary from source. The binary package is
extracted and new packages in the configured output package format are
@@ -187,7 +187,7 @@
``binconfig.bbclass``
=====================
-The ``binconfig`` class helps to correct paths in shell scripts.
+The :ref:`binconfig <ref-classes-binconfig>` class helps to correct paths in shell scripts.
Before ``pkg-config`` had become widespread, libraries shipped shell
scripts to give information about the libraries and include paths needed
@@ -219,7 +219,7 @@
``buildhistory.bbclass``
========================
-The ``buildhistory`` class records a history of build output metadata,
+The :ref:`buildhistory <ref-classes-buildhistory>` class records a history of build output metadata,
which can be used to detect possible regressions as well as used for
analysis of the build output. For more information on using Build
History, see the
@@ -231,7 +231,7 @@
``buildstats.bbclass``
======================
-The ``buildstats`` class records performance statistics about each task
+The :ref:`buildstats <ref-classes-buildstats>` class records performance statistics about each task
executed during the build (e.g. elapsed time, CPU usage, and I/O usage).
When you use this class, the output goes into the
@@ -245,7 +245,7 @@
:term:`USER_CLASSES` variable from your
``local.conf`` file. Consequently, you do not have to do anything to
enable the class. However, if you want to disable the class, simply
-remove "buildstats" from the :term:`USER_CLASSES` list.
+remove ":ref:`buildstats <ref-classes-buildstats>`" from the :term:`USER_CLASSES` list.
.. _ref-classes-buildstats-summary:
@@ -261,7 +261,7 @@
``ccache.bbclass``
==================
-The ``ccache`` class enables the C/C++ Compiler Cache for the build.
+The :ref:`ccache <ref-classes-ccache>` class enables the C/C++ Compiler Cache for the build.
This class is used to give a minor performance boost during the build.
See https://ccache.samba.org/ for information on the C/C++ Compiler
@@ -278,9 +278,9 @@
``chrpath.bbclass``
===================
-The ``chrpath`` class is a wrapper around the "chrpath" utility, which
-is used during the build process for ``nativesdk``, ``cross``, and
-``cross-canadian`` recipes to change ``RPATH`` records within binaries
+The :ref:`chrpath <ref-classes-chrpath>` class is a wrapper around the "chrpath" utility, which
+is used during the build process for :ref:`nativesdk <ref-classes-nativesdk>`, :ref:`cross <ref-classes-cross>`, and
+:ref:`cross-canadian <ref-classes-cross-canadian>` recipes to change ``RPATH`` records within binaries
in order to make them relocatable.
.. _ref-classes-cmake:
@@ -288,7 +288,7 @@
``cmake.bbclass``
=================
-The ``cmake`` class allows for recipes that need to build software using
+The ref:`cmake <ref-classes-cmake>` class allows for recipes that need to build software using
the `CMake <https://cmake.org/overview/>`__ build system. You can use
the :term:`EXTRA_OECMAKE` variable to specify
additional configuration options to be passed using the ``cmake``
@@ -305,7 +305,7 @@
``cml1.bbclass``
================
-The ``cml1`` class provides basic support for the Linux kernel style
+The :ref:`cml1 <ref-classes-cml1>` class provides basic support for the Linux kernel style
build configuration system.
.. _ref-classes-compress_doc:
@@ -323,8 +323,8 @@
``copyleft_compliance.bbclass``
===============================
-The ``copyleft_compliance`` class preserves source code for the purposes
-of license compliance. This class is an alternative to the ``archiver``
+The :ref:`copyleft_compliance <ref-classes-copyleft_compliance>` class preserves source code for the purposes
+of license compliance. This class is an alternative to the :ref:`archiver <ref-classes-archiver>`
class and is still used by some users even though it has been deprecated
in favor of the :ref:`archiver <ref-classes-archiver>` class.
@@ -343,7 +343,7 @@
``core-image.bbclass``
======================
-The ``core-image`` class provides common definitions for the
+The :ref:`core-image <ref-classes-core-image>` class provides common definitions for the
``core-image-*`` image recipes, such as support for additional
:term:`IMAGE_FEATURES`.
@@ -352,7 +352,7 @@
``cpan*.bbclass``
=================
-The ``cpan*`` classes support Perl modules.
+The :ref:`cpan* <ref-classes-cpan>` classes support Perl modules.
Recipes for Perl modules are simple. These recipes usually only need to
point to the source's archive and then inherit the proper class file.
@@ -365,7 +365,7 @@
- Modules that use ``Build.PL``-based build system require using
``cpan_build.bbclass`` in their recipes.
-Both build methods inherit the ``cpan-base`` class for basic Perl
+Both build methods inherit the :ref:`cpan-base <ref-classes-cpan>` class for basic Perl
support.
.. _ref-classes-create-spdx:
@@ -373,7 +373,7 @@
``create-spdx.bbclass``
=======================
-The ``create-spdx`` class provides support for automatically creating
+The :ref:`create-spdx <ref-classes-create-spdx>` class provides support for automatically creating
SPDX SBoM documents based upon image and SDK contents.
.. _ref-classes-cross:
@@ -381,7 +381,7 @@
``cross.bbclass``
=================
-The ``cross`` class provides support for the recipes that build the
+The :ref:`cross <ref-classes-cross>` class provides support for the recipes that build the
cross-compilation tools.
.. _ref-classes-cross-canadian:
@@ -389,7 +389,7 @@
``cross-canadian.bbclass``
==========================
-The ``cross-canadian`` class provides support for the recipes that build
+The :ref:`cross-canadian <ref-classes-cross-canadian>` class provides support for the recipes that build
the Canadian Cross-compilation tools for SDKs. See the
":ref:`overview-manual/concepts:cross-development toolchain generation`"
section in the Yocto Project Overview and Concepts Manual for more
@@ -400,7 +400,7 @@
``crosssdk.bbclass``
====================
-The ``crosssdk`` class provides support for the recipes that build the
+The :ref:`crosssdk <ref-classes-crosssdk>` class provides support for the recipes that build the
cross-compilation tools used for building SDKs. See the
":ref:`overview-manual/concepts:cross-development toolchain generation`"
section in the Yocto Project Overview and Concepts Manual for more
@@ -411,14 +411,62 @@
``cve-check.bbclass``
=====================
-The ``cve-check`` class looks for known CVEs (Common Vulnerabilities
-and Exposures) while building an image. This class is meant to be
+The :ref:`cve-check <ref-classes-cve-check>` class looks for known CVEs (Common Vulnerabilities
+and Exposures) while building with BitBake. This class is meant to be
inherited globally from a configuration file::
INHERIT += "cve-check"
+To filter out obsolete CVE database entries which are known not to impact software from Poky and OE-Core,
+add following line to the build configuration file::
+
+ include cve-extra-exclusions.inc
+
You can also look for vulnerabilities in specific packages by passing
-``-c cve_check`` to BitBake. You will find details in the
+``-c cve_check`` to BitBake.
+
+After building the software with Bitbake, CVE check output reports are available in ``tmp/deploy/cve``
+and image specific summaries in ``tmp/deploy/images/*.cve`` or ``tmp/deploy/images/*.json`` files.
+
+When building, the CVE checker will emit build time warnings for any detected
+issues which are in the state ``Unpatched``, meaning that CVE issue seems to affect the software component
+and version being compiled and no patches to address the issue are applied. Other states
+for detected CVE issues are: ``Patched`` meaning that a patch to address the issue is already
+applied, and ``Ignored`` meaning that the issue can be ignored.
+
+The ``Patched`` state of a CVE issue is detected from patch files with the format
+``CVE-ID.patch``, e.g. ``CVE-2019-20633.patch``, in the :term:`SRC_URI` and using
+CVE metadata of format ``CVE: CVE-ID`` in the commit message of the patch file.
+
+If the recipe lists the ``CVE-ID`` in :term:`CVE_CHECK_IGNORE` variable, then the CVE state is reported
+as ``Ignored``. Multiple CVEs can be listed separated by spaces. Example::
+
+ CVE_CHECK_IGNORE += "CVE-2020-29509 CVE-2020-29511"
+
+If CVE check reports that a recipe contains false positives or false negatives, these may be
+fixed in recipes by adjusting the CVE product name using :term:`CVE_PRODUCT` and :term:`CVE_VERSION` variables.
+:term:`CVE_PRODUCT` defaults to the plain recipe name :term:`BPN` which can be adjusted to one or more CVE
+database vendor and product pairs using the syntax::
+
+ CVE_PRODUCT = "flex_project:flex"
+
+where ``flex_project`` is the CVE database vendor name and ``flex`` is the product name. Similarly
+if the default recipe version :term:`PV` does not match the version numbers of the software component
+in upstream releases or the CVE database, then the :term:`CVE_VERSION` variable can be used to set the
+CVE database compatible version number, for example::
+
+ CVE_VERSION = "2.39"
+
+Any bugs or missing or incomplete information in the CVE database entries should be fixed in the CVE database
+via the `NVD feedback form <https://nvd.nist.gov/info/contact-form>`__.
+
+Users should note that security is a process, not a product, and thus also CVE checking, analyzing results,
+patching and updating the software should be done as a regular process. The data and assumptions
+required for CVE checker to reliably detect issues are frequently broken in various ways.
+These can only be detected by reviewing the details of the issues and iterating over the generated reports,
+and following what happens in other Linux distributions and in the greater open source community.
+
+You will find some more details in the
":ref:`dev-manual/common-tasks:checking for vulnerabilities`"
section in the Development Tasks Manual.
@@ -427,7 +475,7 @@
``debian.bbclass``
==================
-The ``debian`` class renames output packages so that they follow the
+The :ref:`debian <ref-classes-debian>` class renames output packages so that they follow the
Debian naming policy (i.e. ``glibc`` becomes ``libc6`` and
``glibc-devel`` becomes ``libc6-dev``.) Renaming includes the library
name and version as part of the package name.
@@ -442,7 +490,7 @@
``deploy.bbclass``
==================
-The ``deploy`` class handles deploying files to the
+The :ref:`deploy <ref-classes-deploy>` class handles deploying files to the
:term:`DEPLOY_DIR_IMAGE` directory. The main
function of this class is to allow the deploy step to be accelerated by
shared state. Recipes that inherit this class should define their own
@@ -458,17 +506,17 @@
``devshell.bbclass``
====================
-The ``devshell`` class adds the :ref:`ref-tasks-devshell` task. Distribution
+The :ref:`devshell <ref-classes-devshell>` class adds the :ref:`ref-tasks-devshell` task. Distribution
policy dictates whether to include this class. See the ":ref:`dev-manual/common-tasks:using a development shell`"
section in the Yocto Project Development Tasks Manual for more
-information about using ``devshell``.
+information about using :ref:`devshell <ref-classes-devshell>`.
.. _ref-classes-devupstream:
``devupstream.bbclass``
=======================
-The ``devupstream`` class uses
+The :ref:`devupstream <ref-classes-devupstream>` class uses
:term:`BBCLASSEXTEND` to add a variant of the
recipe that fetches from an alternative URI (e.g. Git) instead of a
tarball. Following is an example::
@@ -490,10 +538,10 @@
The class
currently only supports creating a development variant of the target
-recipe, not ``native`` or ``nativesdk`` variants.
+recipe, not :ref:`native <ref-classes-native>` or :ref:`nativesdk <ref-classes-nativesdk>` variants.
The :term:`BBCLASSEXTEND` syntax (i.e. ``devupstream:target``) provides
-support for ``native`` and ``nativesdk`` variants. Consequently, this
+support for :ref:`native <ref-classes-native>` and :ref:`nativesdk <ref-classes-nativesdk>` variants. Consequently, this
functionality can be added in a future release.
Support for other version control systems such as Subversion is limited
@@ -505,7 +553,7 @@
``externalsrc.bbclass``
=======================
-The ``externalsrc`` class supports building software from source code
+The :ref:`externalsrc <ref-classes-externalsrc>` class supports building software from source code
that is external to the OpenEmbedded build system. Building software
from an external source tree means that the build system's normal fetch,
unpack, and patch process is not used.
@@ -513,7 +561,7 @@
By default, the OpenEmbedded build system uses the :term:`S`
and :term:`B` variables to locate unpacked recipe source code
and to build it, respectively. When your recipe inherits the
-``externalsrc`` class, you use the
+:ref:`externalsrc <ref-classes-externalsrc>` class, you use the
:term:`EXTERNALSRC` and
:term:`EXTERNALSRC_BUILD` variables to
ultimately define :term:`S` and :term:`B`.
@@ -530,10 +578,10 @@
:term:`WORKDIR`, :term:`BPN`, and
:term:`PV`,
-For more information on the ``externalsrc`` class, see the comments in
+For more information on the :ref:`externalsrc <ref-classes-externalsrc>` class, see the comments in
``meta/classes/externalsrc.bbclass`` in the :term:`Source Directory`.
For information on how to use the
-``externalsrc`` class, see the
+:ref:`externalsrc <ref-classes-externalsrc>` class, see the
":ref:`dev-manual/common-tasks:building software from an external source`"
section in the Yocto Project Development Tasks Manual.
@@ -542,7 +590,7 @@
``extrausers.bbclass``
======================
-The ``extrausers`` class allows additional user and group configuration
+The :ref:`extrausers <ref-classes-extrausers>` class allows additional user and group configuration
to be applied at the image level. Inheriting this class either globally
or from an image recipe allows additional user and group operations to
be performed using the
@@ -604,7 +652,7 @@
``features_check.bbclass``
=================================
-The ``features_check`` class allows individual recipes to check
+The :ref:`features_check <ref-classes-features_check>` class allows individual recipes to check
for required and conflicting
:term:`DISTRO_FEATURES`, :term:`MACHINE_FEATURES` or :term:`COMBINED_FEATURES`.
@@ -630,7 +678,7 @@
``fontcache.bbclass``
=====================
-The ``fontcache`` class generates the proper post-install and
+The :ref:`fontcache <ref-classes-fontcache>` class generates the proper post-install and
post-remove (postinst and postrm) scriptlets for font packages. These
scriptlets call ``fc-cache`` (part of ``Fontconfig``) to add the fonts
to the font information cache. Since the cache files are
@@ -646,9 +694,9 @@
``fs-uuid.bbclass``
===================
-The ``fs-uuid`` class extracts UUID from
+The :ref:`fs-uuid <ref-classes-fs-uuid>` class extracts UUID from
``${``\ :term:`ROOTFS`\ ``}``, which must have been built
-by the time that this function gets called. The ``fs-uuid`` class only
+by the time that this function gets called. The :ref:`fs-uuid <ref-classes-fs-uuid>` class only
works on ``ext`` file systems and depends on ``tune2fs``.
.. _ref-classes-gconf:
@@ -656,7 +704,7 @@
``gconf.bbclass``
=================
-The ``gconf`` class provides common functionality for recipes that need
+The :ref:`gconf <ref-classes-gconf>` class provides common functionality for recipes that need
to install GConf schemas. The schemas will be put into a separate
package (``${``\ :term:`PN`\ ``}-gconf``) that is created
automatically when this class is inherited. This package uses the
@@ -668,7 +716,7 @@
``gettext.bbclass``
===================
-The ``gettext`` class provides support for building software that uses
+The :ref:`gettext <ref-classes-gettext>` class provides support for building software that uses
the GNU ``gettext`` internationalization and localization system. All
recipes building software that use ``gettext`` should inherit this
class.
@@ -678,11 +726,11 @@
``github-releases``
===================
-For recipes that fetch release tarballs from github, the ``github-releases``
+For recipes that fetch release tarballs from github, the :ref:`github-releases <ref-classes-github-releases>`
class sets up a standard way for checking available upstream versions
(to support ``devtool upgrade`` and the Automated Upgrade Helper (AUH)).
-To use it, add ``github-releases`` to the inherit line in the recipe,
+To use it, add ":ref:`github-releases <ref-classes-github-releases>`" to the inherit line in the recipe,
and if the default value of :term:`GITHUB_BASE_URI` is not suitable,
then set your own value in the recipe. You should then use ``${GITHUB_BASE_URI}``
in the value you set for :term:`SRC_URI` within the recipe.
@@ -692,7 +740,7 @@
``gnomebase.bbclass``
=====================
-The ``gnomebase`` class is the base class for recipes that build
+The :ref:`gnomebase <ref-classes-gnomebase>` class is the base class for recipes that build
software from the GNOME stack. This class sets
:term:`SRC_URI` to download the source from the GNOME
mirrors as well as extending :term:`FILES` with the typical
@@ -721,7 +769,7 @@
``grub-efi.bbclass``
====================
-The ``grub-efi`` class provides ``grub-efi``-specific functions for
+The :ref:`grub-efi <ref-classes-grub-efi>` class provides ``grub-efi``-specific functions for
building bootable images.
This class supports several variables:
@@ -753,7 +801,7 @@
``gsettings.bbclass``
=====================
-The ``gsettings`` class provides common functionality for recipes that
+The :ref:`gsettings <ref-classes-gsettings>` class provides common functionality for recipes that
need to install GSettings (glib) schemas. The schemas are assumed to be
part of the main package. Appropriate post-install and post-remove
(postinst/postrm) scriptlets are added to register and unregister the
@@ -764,7 +812,7 @@
``gtk-doc.bbclass``
===================
-The ``gtk-doc`` class is a helper class to pull in the appropriate
+The :ref:`gtk-doc <ref-classes-gtk-doc>` class is a helper class to pull in the appropriate
``gtk-doc`` dependencies and disable ``gtk-doc``.
.. _ref-classes-gtk-icon-cache:
@@ -772,7 +820,7 @@
``gtk-icon-cache.bbclass``
==========================
-The ``gtk-icon-cache`` class generates the proper post-install and
+The :ref:`gtk-icon-cache <ref-classes-gtk-icon-cache>` class generates the proper post-install and
post-remove (postinst/postrm) scriptlets for packages that use GTK+ and
install icons. These scriptlets call ``gtk-update-icon-cache`` to add
the fonts to GTK+'s icon cache. Since the cache files are
@@ -785,7 +833,7 @@
``gtk-immodules-cache.bbclass``
===============================
-The ``gtk-immodules-cache`` class generates the proper post-install and
+The :ref:`gtk-immodules-cache <ref-classes-gtk-immodules-cache>` class generates the proper post-install and
post-remove (postinst/postrm) scriptlets for packages that install GTK+
input method modules for virtual keyboards. These scriptlets call
``gtk-update-icon-cache`` to add the input method modules to the cache.
@@ -803,7 +851,7 @@
``gzipnative.bbclass``
======================
-The ``gzipnative`` class enables the use of different native versions of
+The :ref:`gzipnative <ref-classes-gzipnative>` class enables the use of different native versions of
``gzip`` and ``pigz`` rather than the versions of these tools from the
build host.
@@ -812,7 +860,7 @@
``icecc.bbclass``
=================
-The ``icecc`` class supports
+The :ref:`icecc <ref-classes-icecc>` class supports
`Icecream <https://github.com/icecc/icecream>`__, which facilitates
taking compile jobs and distributing them among remote machines.
@@ -860,13 +908,13 @@
your ``local.conf`` file to force ``icecc`` to be enabled for recipes
using an empty :term:`PARALLEL_MAKE` variable.
-Inheriting the ``icecc`` class changes all sstate signatures.
+Inheriting the :ref:`icecc <ref-classes-icecc>` class changes all sstate signatures.
Consequently, if a development team has a dedicated build system that
populates :term:`SSTATE_MIRRORS` and they want to
reuse sstate from :term:`SSTATE_MIRRORS`, then all developers and the build
-system need to either inherit the ``icecc`` class or nobody should.
+system need to either inherit the :ref:`icecc <ref-classes-icecc>` class or nobody should.
-At the distribution level, you can inherit the ``icecc`` class to be
+At the distribution level, you can inherit the :ref:`icecc <ref-classes-icecc>` class to be
sure that all builders start with the same sstate signatures. After
inheriting the class, you can then disable the feature by setting the
:term:`ICECC_DISABLED` variable to "1" as follows::
@@ -886,7 +934,7 @@
``image.bbclass``
=================
-The ``image`` class helps support creating images in different formats.
+The :ref:`image <ref-classes-image>` class helps support creating images in different formats.
First, the root filesystem is created from packages using one of the
``rootfs*.bbclass`` files (depending on the package format used) and
then one or more image files are created.
@@ -909,7 +957,7 @@
``image-buildinfo.bbclass``
===========================
-The ``image-buildinfo`` class writes a plain text file containing
+The :ref:`image-buildinfo <ref-classes-image-buildinfo>` class writes a plain text file containing
build information to the target filesystem at ``${sysconfdir}/buildinfo``
by default (as specified by :term:`IMAGE_BUILDINFO_FILE`.
This can be useful for manually determining the origin of any given
@@ -931,14 +979,14 @@
``image_types.bbclass``
=======================
-The ``image_types`` class defines all of the standard image output types
+The :ref:`image_types <ref-classes-image_types>` class defines all of the standard image output types
that you can enable through the
:term:`IMAGE_FSTYPES` variable. You can use this
class as a reference on how to add support for custom image output
types.
By default, the :ref:`image <ref-classes-image>` class automatically
-enables the ``image_types`` class. The ``image`` class uses the
+enables the :ref:`image_types <ref-classes-image_types>` class. The :ref:`image <ref-classes-image>` class uses the
``IMGCLASSES`` variable as follows::
IMGCLASSES = "rootfs_${IMAGE_PKGTYPE} image_types ${IMAGE_CLASSES}"
@@ -950,7 +998,7 @@
IMGCLASSES += "image-postinst-intercepts"
inherit ${IMGCLASSES}
-The ``image_types`` class also handles conversion and compression of images.
+The :ref:`image_types <ref-classes-image_types>` class also handles conversion and compression of images.
.. note::
@@ -976,7 +1024,7 @@
``insane.bbclass``
==================
-The ``insane`` class adds a step to the package generation process so
+The :ref:`insane <ref-classes-insane>` class adds a step to the package generation process so
that output quality assurance checks are generated by the OpenEmbedded
build system. A range of checks are performed that check the build's
output for common problems that show up during runtime. Distribution
@@ -1276,7 +1324,7 @@
``insserv.bbclass``
===================
-The ``insserv`` class uses the ``insserv`` utility to update the order
+The :ref:`insserv <ref-classes-insserv>` class uses the ``insserv`` utility to update the order
of symbolic links in ``/etc/rc?.d/`` within an image based on
dependencies specified by LSB headers in the ``init.d`` scripts
themselves.
@@ -1286,7 +1334,7 @@
``kernel.bbclass``
==================
-The ``kernel`` class handles building Linux kernels. The class contains
+The :ref:`kernel <ref-classes-kernel>` class handles building Linux kernels. The class contains
code to build all kernel trees. All needed headers are staged into the
:term:`STAGING_KERNEL_DIR` directory to allow out-of-tree module builds
using the :ref:`module <ref-classes-module>` class.
@@ -1297,13 +1345,13 @@
package installs all packages with modules and various other kernel
packages such as ``kernel-vmlinux``.
-The ``kernel`` class contains logic that allows you to embed an initial
+The :ref:`kernel <ref-classes-kernel>` class contains logic that allows you to embed an initial
RAM filesystem (:term:`Initramfs`) image when you build the kernel image. For
information on how to build an :term:`Initramfs`, see the
":ref:`dev-manual/common-tasks:building an initial ram filesystem (Initramfs) image`" section in
the Yocto Project Development Tasks Manual.
-Various other classes are used by the ``kernel`` and ``module`` classes
+Various other classes are used by the :ref:`kernel <ref-classes-kernel>` and :ref:`module <ref-classes-module>` classes
internally including the :ref:`kernel-arch <ref-classes-kernel-arch>`,
:ref:`module-base <ref-classes-module-base>`, and
:ref:`linux-kernel-base <ref-classes-linux-kernel-base>` classes.
@@ -1313,7 +1361,7 @@
``kernel-arch.bbclass``
=======================
-The ``kernel-arch`` class sets the ``ARCH`` environment variable for
+The :ref:`kernel-arch <ref-classes-kernel-arch>` class sets the ``ARCH`` environment variable for
Linux kernel compilation (including modules).
.. _ref-classes-kernel-devicetree:
@@ -1321,7 +1369,7 @@
``kernel-devicetree.bbclass``
=============================
-The ``kernel-devicetree`` class, which is inherited by the
+The :ref:`kernel-devicetree <ref-classes-kernel-devicetree>` class, which is inherited by the
:ref:`kernel <ref-classes-kernel>` class, supports device tree
generation.
@@ -1330,11 +1378,11 @@
``kernel-fitimage.bbclass``
===========================
-The ``kernel-fitimage`` class provides support to pack a kernel image,
+The :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` class provides support to pack a kernel image,
device trees, a U-boot script, a Initramfs bundle and a RAM disk
into a single FIT image. In theory, a FIT image can support any number
of kernels, U-boot scripts, Initramfs bundles, RAM disks and device-trees.
-However, ``kernel-fitimage`` currently only supports
+However, :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` currently only supports
limited usecases: just one kernel image, an optional U-boot script,
an optional Initramfs bundle, an optional RAM disk, and any number of
device tree.
@@ -1348,19 +1396,19 @@
:term:`UBOOT_MKIMAGE_DTCOPTS` variable.
Only a single kernel can be added to the FIT image created by
-``kernel-fitimage`` and the kernel image in FIT is mandatory. The
+:ref:`kernel-fitimage <ref-classes-kernel-fitimage>` and the kernel image in FIT is mandatory. The
address where the kernel image is to be loaded by U-Boot is
specified by :term:`UBOOT_LOADADDRESS` and the entrypoint by
:term:`UBOOT_ENTRYPOINT`.
Multiple device trees can be added to the FIT image created by
-``kernel-fitimage`` and the device tree is optional.
+:ref:`kernel-fitimage <ref-classes-kernel-fitimage>` and the device tree is optional.
The address where the device tree is to be loaded by U-Boot is
specified by :term:`UBOOT_DTBO_LOADADDRESS` for device tree overlays
and by :term:`UBOOT_DTB_LOADADDRESS` for device tree binaries.
Only a single RAM disk can be added to the FIT image created by
-``kernel-fitimage`` and the RAM disk in FIT is optional.
+:ref:`kernel-fitimage <ref-classes-kernel-fitimage>` and the RAM disk in FIT is optional.
The address where the RAM disk image is to be loaded by U-Boot
is specified by :term:`UBOOT_RD_LOADADDRESS` and the entrypoint by
:term:`UBOOT_RD_ENTRYPOINT`. The ramdisk is added to FIT image when
@@ -1368,7 +1416,7 @@
is set to 0.
Only a single Initramfs bundle can be added to the FIT image created by
-``kernel-fitimage`` and the Initramfs bundle in FIT is optional.
+:ref:`kernel-fitimage <ref-classes-kernel-fitimage>` and the Initramfs bundle in FIT is optional.
In case of Initramfs, the kernel is configured to be bundled with the root filesystem
in the same binary (example: zImage-initramfs-:term:`MACHINE`.bin).
When the kernel is copied to RAM and executed, it unpacks the Initramfs root filesystem.
@@ -1378,21 +1426,21 @@
by :term:`UBOOT_LOADADDRESS` and the entrypoint by :term:`UBOOT_ENTRYPOINT`.
Only a single U-boot boot script can be added to the FIT image created by
-``kernel-fitimage`` and the boot script is optional.
+:ref:`kernel-fitimage <ref-classes-kernel-fitimage>` and the boot script is optional.
The boot script is specified in the ITS file as a text file containing
U-boot commands. When using a boot script the user should configure the
U-boot :ref:`ref-tasks-install` task to copy the script to sysroot.
-So the script can be included in the FIT image by the ``kernel-fitimage``
+So the script can be included in the FIT image by the :ref:`kernel-fitimage <ref-classes-kernel-fitimage>`
class. At run-time, U-boot CONFIG_BOOTCOMMAND define can be configured to
load the boot script from the FIT image and executes it.
-The FIT image generated by ``kernel-fitimage`` class is signed when the
+The FIT image generated by :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` class is signed when the
variables :term:`UBOOT_SIGN_ENABLE`, :term:`UBOOT_MKIMAGE_DTCOPTS`,
:term:`UBOOT_SIGN_KEYDIR` and :term:`UBOOT_SIGN_KEYNAME` are set
appropriately. The default values used for :term:`FIT_HASH_ALG` and
-:term:`FIT_SIGN_ALG` in ``kernel-fitimage`` are "sha256" and
+:term:`FIT_SIGN_ALG` in :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` are "sha256" and
"rsa2048" respectively. The keys for signing fitImage can be generated using
-the ``kernel-fitimage`` class when both :term:`FIT_GENERATE_KEYS` and
+the :ref:`kernel-fitimage <ref-classes-kernel-fitimage>` class when both :term:`FIT_GENERATE_KEYS` and
:term:`UBOOT_SIGN_ENABLE` are set to "1".
@@ -1401,7 +1449,7 @@
``kernel-grub.bbclass``
=======================
-The ``kernel-grub`` class updates the boot area and the boot menu with
+The :ref:`kernel-grub <ref-classes-kernel-grub>` class updates the boot area and the boot menu with
the kernel as the priority boot mechanism while installing a RPM to
update the kernel on a deployed target.
@@ -1410,7 +1458,7 @@
``kernel-module-split.bbclass``
===============================
-The ``kernel-module-split`` class provides common functionality for
+The :ref:`kernel-module-split <ref-classes-kernel-module-split>` class provides common functionality for
splitting Linux kernel modules into separate packages.
.. _ref-classes-kernel-uboot:
@@ -1418,7 +1466,7 @@
``kernel-uboot.bbclass``
========================
-The ``kernel-uboot`` class provides support for building from
+The :ref:`kernel-uboot <ref-classes-kernel-uboot>` class provides support for building from
vmlinux-style kernel sources.
.. _ref-classes-kernel-uimage:
@@ -1426,14 +1474,14 @@
``kernel-uimage.bbclass``
=========================
-The ``kernel-uimage`` class provides support to pack uImage.
+The :ref:`kernel-uimage <ref-classes-kernel-uimage>` class provides support to pack uImage.
.. _ref-classes-kernel-yocto:
``kernel-yocto.bbclass``
========================
-The ``kernel-yocto`` class provides common functionality for building
+The :ref:`kernel-yocto <ref-classes-kernel-yocto>` class provides common functionality for building
from linux-yocto style kernel source repositories.
.. _ref-classes-kernelsrc:
@@ -1441,14 +1489,14 @@
``kernelsrc.bbclass``
=====================
-The ``kernelsrc`` class sets the Linux kernel source and version.
+The :ref:`kernelsrc <ref-classes-kernelsrc>` class sets the Linux kernel source and version.
.. _ref-classes-lib_package:
``lib_package.bbclass``
=======================
-The ``lib_package`` class supports recipes that build libraries and
+The :ref:`lib_package <ref-classes-lib_package>` class supports recipes that build libraries and
produce executable binaries, where those binaries should not be
installed by default along with the library. Instead, the binaries are
added to a separate ``${``\ :term:`PN`\ ``}-bin`` package to
@@ -1459,12 +1507,12 @@
``libc*.bbclass``
=================
-The ``libc*`` classes support recipes that build packages with ``libc``:
+The :ref:`libc* <ref-classes-libc*>` classes support recipes that build packages with ``libc``:
-- The ``libc-common`` class provides common support for building with
+- The :ref:`libc-common <ref-classes-libc*>` class provides common support for building with
``libc``.
-- The ``libc-package`` class supports packaging up ``glibc`` and
+- The :ref:`libc-package <ref-classes-libc*>` class supports packaging up ``glibc`` and
``eglibc``.
.. _ref-classes-license:
@@ -1472,7 +1520,7 @@
``license.bbclass``
===================
-The ``license`` class provides license manifest creation and license
+The :ref:`license <ref-classes-license>` class provides license manifest creation and license
exclusion. This class is enabled by default using the default value for
the :term:`INHERIT_DISTRO` variable.
@@ -1481,7 +1529,7 @@
``linux-kernel-base.bbclass``
=============================
-The ``linux-kernel-base`` class provides common functionality for
+The :ref:`linux-kernel-base <ref-classes-linux-kernel-base>` class provides common functionality for
recipes that build out of the Linux kernel source tree. These builds
goes beyond the kernel itself. For example, the Perf recipe also
inherits this class.
@@ -1500,11 +1548,11 @@
``logging.bbclass``
===================
-The ``logging`` class provides the standard shell functions used to log
+The :ref:`logging <ref-classes-logging>` class provides the standard shell functions used to log
messages for various BitBake severity levels (i.e. ``bbplain``,
``bbnote``, ``bbwarn``, ``bberror``, ``bbfatal``, and ``bbdebug``).
-This class is enabled by default since it is inherited by the ``base``
+This class is enabled by default since it is inherited by the :ref:`base <ref-classes-base>`
class.
.. _ref-classes-metadata_scm:
@@ -1512,20 +1560,20 @@
``metadata_scm.bbclass``
========================
-The ``metadata_scm`` class provides functionality for querying the
+The :ref:`metadata_scm <ref-classes-metadata_scm>` class provides functionality for querying the
branch and revision of a Source Code Manager (SCM) repository.
The :ref:`base <ref-classes-base>` class uses this class to print the
revisions of each layer before starting every build. The
-``metadata_scm`` class is enabled by default because it is inherited by
-the ``base`` class.
+:ref:`metadata_scm <ref-classes-metadata_scm>` class is enabled by default because it is inherited by
+the :ref:`base <ref-classes-base>` class.
.. _ref-classes-migrate_localcount:
``migrate_localcount.bbclass``
==============================
-The ``migrate_localcount`` class verifies a recipe's localcount data and
+The :ref:`migrate_localcount <ref-classes-migrate_localcount>` class verifies a recipe's localcount data and
increments it appropriately.
.. _ref-classes-mime:
@@ -1533,7 +1581,7 @@
``mime.bbclass``
================
-The ``mime`` class generates the proper post-install and post-remove
+The :ref:`mime <ref-classes-mime>` class generates the proper post-install and post-remove
(postinst/postrm) scriptlets for packages that install MIME type files.
These scriptlets call ``update-mime-database`` to add the MIME types to
the shared database.
@@ -1543,7 +1591,7 @@
``mirrors.bbclass``
===================
-The ``mirrors`` class sets up some standard
+The :ref:`mirrors <ref-classes-mirrors>` class sets up some standard
:term:`MIRRORS` entries for source code mirrors. These
mirrors provide a fall-back path in case the upstream source specified
in :term:`SRC_URI` within recipes is unavailable.
@@ -1556,7 +1604,7 @@
``module.bbclass``
==================
-The ``module`` class provides support for building out-of-tree Linux
+The :ref:`module <ref-classes-module>` class provides support for building out-of-tree Linux
kernel modules. The class inherits the
:ref:`module-base <ref-classes-module-base>` and
:ref:`kernel-module-split <ref-classes-kernel-module-split>` classes,
@@ -1573,7 +1621,7 @@
``module-base.bbclass``
=======================
-The ``module-base`` class provides the base functionality for building
+The :ref:`module-base <ref-classes-module-base>` class provides the base functionality for building
Linux kernel modules. Typically, a recipe that builds software that
includes one or more kernel modules and has its own means of building
the module inherits this class as opposed to inheriting the
@@ -1584,7 +1632,7 @@
``multilib*.bbclass``
=====================
-The ``multilib*`` classes provide support for building libraries with
+The :ref:`multilib* <ref-classes-multilib*>` classes provide support for building libraries with
different target optimizations or target architectures and installing
them side-by-side in the same image.
@@ -1597,17 +1645,17 @@
``native.bbclass``
==================
-The ``native`` class provides common functionality for recipes that
+The :ref:`native <ref-classes-native>` class provides common functionality for recipes that
build tools to run on the :term:`Build Host` (i.e. tools that use the compiler
or other tools from the build host).
You can create a recipe that builds tools that run natively on the host
a couple different ways:
-- Create a ``myrecipe-native.bb`` recipe that inherits the ``native``
+- Create a ``myrecipe-native.bb`` recipe that inherits the :ref:`native <ref-classes-native>`
class. If you use this method, you must order the inherit statement
in the recipe after all other inherit statements so that the
- ``native`` class is inherited last.
+ :ref:`native <ref-classes-native>` class is inherited last.
.. note::
@@ -1629,7 +1677,7 @@
specify any functionality specific to the respective native or target
case.
-Although applied differently, the ``native`` class is used with both
+Although applied differently, the :ref:`native <ref-classes-native>` class is used with both
methods. The advantage of the second method is that you do not need to
have two separate recipes (assuming you need both) for native and
target. All common parts of the recipe are automatically shared.
@@ -1639,7 +1687,7 @@
``nativesdk.bbclass``
=====================
-The ``nativesdk`` class provides common functionality for recipes that
+The :ref:`nativesdk <ref-classes-nativesdk>` class provides common functionality for recipes that
wish to build tools to run as part of an SDK (i.e. tools that run on
:term:`SDKMACHINE`).
@@ -1647,11 +1695,11 @@
couple different ways:
- Create a ``nativesdk-myrecipe.bb`` recipe that inherits the
- ``nativesdk`` class. If you use this method, you must order the
+ :ref:`nativesdk <ref-classes-nativesdk>` class. If you use this method, you must order the
inherit statement in the recipe after all other inherit statements so
- that the ``nativesdk`` class is inherited last.
+ that the :ref:`nativesdk <ref-classes-nativesdk>` class is inherited last.
-- Create a ``nativesdk`` variant of any recipe by adding the following::
+- Create a :ref:`nativesdk <ref-classes-nativesdk>` variant of any recipe by adding the following::
BBCLASSEXTEND = "nativesdk"
@@ -1670,7 +1718,7 @@
Not doing so can lead to subtle problems because there is code that
depends on the naming convention.
-Although applied differently, the ``nativesdk`` class is used with both
+Although applied differently, the :ref:`nativesdk <ref-classes-nativesdk>` class is used with both
methods. The advantage of the second method is that you do not need to
have two separate recipes (assuming you need both) for the SDK machine
and the target. All common parts of the recipe are automatically shared.
@@ -1705,11 +1753,11 @@
``oelint.bbclass``
==================
-The ``oelint`` class is an obsolete lint checking tool available in
+The :ref:`oelint <ref-classes-oelint>` class is an obsolete lint checking tool available in
``meta/classes`` in the :term:`Source Directory`.
There are some classes that could be generally useful in OE-Core but
-are never actually used within OE-Core itself. The ``oelint`` class is
+are never actually used within OE-Core itself. The :ref:`oelint <ref-classes-oelint>` class is
one such example. However, being aware of this class can reduce the
proliferation of different versions of similar classes across multiple
layers.
@@ -1738,7 +1786,7 @@
* QA checks fail to catch file existence if you redefine this variable in your recipe!
* Only the existence of the systemd mount unit file is checked, not its contents.
* To get more details on ``overlayfs``, its internals and supported operations, please refer
- to the official documentation of the `Linux kernel <https://www.kernel.org/doc/html/latest/filesystems/overlayfs.html>`_.
+ to the official documentation of the `Linux kernel <https://www.kernel.org/doc/html/latest/filesystems/overlayfs.html>`__.
The class assumes you have a ``data.mount`` systemd unit defined elsewhere in your BSP
(e.g. in ``systemd-machine-units`` recipe) and it's installed into the image.
@@ -1828,7 +1876,7 @@
``own-mirrors.bbclass``
=======================
-The ``own-mirrors`` class makes it easier to set up your own
+The :ref:`own-mirrors <ref-classes-own-mirrors>` class makes it easier to set up your own
:term:`PREMIRRORS` from which to first fetch source
before attempting to fetch it from the upstream specified in
:term:`SRC_URI` within each recipe.
@@ -1847,7 +1895,7 @@
``package.bbclass``
===================
-The ``package`` class supports generating packages from a build's
+The :ref:`package <ref-classes-package>` class supports generating packages from a build's
output. The core generic functionality is in ``package.bbclass``. The
code specific to particular package types resides in these
package-specific classes:
@@ -1858,18 +1906,16 @@
.. note::
- The
- package_tar
- class is broken and not supported. It is recommended that you do not
- use this class.
+ The :ref:`package_tar <ref-classes-package_tar>` class is broken and
+ not supported. It is recommended that you do not use this class.
You can control the list of resulting package formats by using the
:term:`PACKAGE_CLASSES` variable defined in your ``conf/local.conf``
configuration file, which is located in the :term:`Build Directory`.
-When defining the variable, you can
-specify one or more package types. Since images are generated from
-packages, a packaging class is needed to enable image generation. The
-first class listed in this variable is used for image generation.
+When defining the variable, you can specify one or more package types.
+Since images are generated from packages, a packaging class is needed
+to enable image generation. The first class listed in this variable is
+used for image generation.
If you take the optional step to set up a repository (package feed) on
the development host that can be used by DNF, you can install packages
@@ -1886,7 +1932,7 @@
The reason for this discrepancy is because the RPM package manager
creates and processes more :term:`Metadata` than the IPK package
manager. Consequently, you might consider setting :term:`PACKAGE_CLASSES` to
-"package_ipk" if you are building smaller systems.
+":ref:`package_ipk <ref-classes-package_ipk>`" if you are building smaller systems.
Before making your package manager decision, however, you should
consider some further things about using RPM:
@@ -1914,7 +1960,7 @@
``package_deb.bbclass``
=======================
-The ``package_deb`` class provides support for creating packages that
+The :ref:`package_deb <ref-classes-package_deb>` class provides support for creating packages that
use the Debian (i.e. ``.deb``) file format. The class ensures the
packages are written out in a ``.deb`` file format to the
``${``\ :term:`DEPLOY_DIR_DEB`\ ``}`` directory.
@@ -1928,7 +1974,7 @@
``package_ipk.bbclass``
=======================
-The ``package_ipk`` class provides support for creating packages that
+The :ref:`package_ipk <ref-classes-package_ipk>` class provides support for creating packages that
use the IPK (i.e. ``.ipk``) file format. The class ensures the packages
are written out in a ``.ipk`` file format to the
``${``\ :term:`DEPLOY_DIR_IPK`\ ``}`` directory.
@@ -1942,7 +1988,7 @@
``package_rpm.bbclass``
=======================
-The ``package_rpm`` class provides support for creating packages that
+The :ref:`package_rpm <ref-classes-package_rpm>` class provides support for creating packages that
use the RPM (i.e. ``.rpm``) file format. The class ensures the packages
are written out in a ``.rpm`` file format to the
``${``\ :term:`DEPLOY_DIR_RPM`\ ``}`` directory.
@@ -1956,7 +2002,7 @@
``package_tar.bbclass``
=======================
-The ``package_tar`` class provides support for creating tarballs. The
+The :ref:`package_tar <ref-classes-package_tar>` class provides support for creating tarballs. The
class ensures the packages are written out in a tarball format to the
``${``\ :term:`DEPLOY_DIR_TAR`\ ``}`` directory.
@@ -1966,7 +2012,7 @@
.. note::
- You cannot specify the ``package_tar`` class first using the
+ You cannot specify the :ref:`package_tar <ref-classes-package_tar>` class first using the
:term:`PACKAGE_CLASSES` variable. You must use ``.deb``, ``.ipk``, or ``.rpm``
file formats for your image or SDK.
@@ -1975,7 +2021,7 @@
``packagedata.bbclass``
=======================
-The ``packagedata`` class provides common functionality for reading
+The :ref:`packagedata <ref-classes-packagedata>` class provides common functionality for reading
``pkgdata`` files found in :term:`PKGDATA_DIR`. These
files contain information about each output package produced by the
OpenEmbedded build system.
@@ -1988,7 +2034,7 @@
``packagegroup.bbclass``
========================
-The ``packagegroup`` class sets default values appropriate for package
+The :ref:`packagegroup <ref-classes-packagegroup>` class sets default values appropriate for package
group recipes (e.g. :term:`PACKAGES`, :term:`PACKAGE_ARCH`, :term:`ALLOW_EMPTY`, and
so forth). It is highly recommended that all package group recipes
inherit this class.
@@ -2004,7 +2050,7 @@
``patch.bbclass``
=================
-The ``patch`` class provides all functionality for applying patches
+The :ref:`patch <ref-classes-patch>` class provides all functionality for applying patches
during the :ref:`ref-tasks-patch` task.
This class is enabled by default because it is inherited by the
@@ -2015,7 +2061,7 @@
``perlnative.bbclass``
======================
-When inherited by a recipe, the ``perlnative`` class supports using the
+When inherited by a recipe, the :ref:`perlnative <ref-classes-perlnative>` class supports using the
native version of Perl built by the build system rather than using the
version provided by the build host.
@@ -2024,14 +2070,14 @@
``pypi.bbclass``
================
-The ``pypi`` class sets variables appropriately for recipes that build
+The :ref:`pypi <ref-classes-pypi>` class sets variables appropriately for recipes that build
Python modules from `PyPI <https://pypi.org/>`__, the Python Package Index.
By default it determines the PyPI package name based upon :term:`BPN`
(stripping the "python-" or "python3-" prefix off if present), however in
some cases you may need to set it manually in the recipe by setting
:term:`PYPI_PACKAGE`.
-Variables set by the ``pypi`` class include :term:`SRC_URI`, :term:`SECTION`,
+Variables set by the :ref:`pypi <ref-classes-pypi>` class include :term:`SRC_URI`, :term:`SECTION`,
:term:`HOMEPAGE`, :term:`UPSTREAM_CHECK_URI`, :term:`UPSTREAM_CHECK_REGEX`
and :term:`CVE_PRODUCT`.
@@ -2040,7 +2086,7 @@
``python_flit_core.bbclass``
============================
-The ``python_flit_core`` class enables building Python modules which declare
+The :ref:`python_flit_core <ref-classes-python_flit_core>` class enables building Python modules which declare
the `PEP-517 <https://www.python.org/dev/peps/pep-0517/>`__ compliant
``flit_core.buildapi`` ``build-backend`` in the ``[build-system]``
section of ``pyproject.toml`` (See `PEP-518 <https://www.python.org/dev/peps/pep-0518/>`__).
@@ -2055,7 +2101,7 @@
``python_pep517.bbclass``
=========================
-The ``python_pep517`` class builds and installs a Python ``wheel`` binary
+The :ref:`python_pep517 <ref-classes-python_pep517>` class builds and installs a Python ``wheel`` binary
archive (see `PEP-517 <https://peps.python.org/pep-0517/>`__).
Recipes wouldn't inherit this directly, instead typically another class will
@@ -2071,7 +2117,7 @@
``python_poetry_core.bbclass``
==============================
-The ``python_poetry_core`` class enables building Python modules which use the
+The :ref:`python_poetry_core <ref-classes-python_poetry_core>` class enables building Python modules which use the
`Poetry Core <https://python-poetry.org>`__ build system.
Internally this uses the :ref:`python_pep517 <ref-classes-python_pep517>` class.
@@ -2081,7 +2127,7 @@
``pixbufcache.bbclass``
=======================
-The ``pixbufcache`` class generates the proper post-install and
+The :ref:`pixbufcache <ref-classes-pixbufcache>` class generates the proper post-install and
post-remove (postinst/postrm) scriptlets for packages that install
pixbuf loaders, which are used with ``gdk-pixbuf``. These scriptlets
call ``update_pixbuf_cache`` to add the pixbuf loaders to the cache.
@@ -2099,13 +2145,13 @@
``pkgconfig.bbclass``
=====================
-The ``pkgconfig`` class provides a standard way to get header and
+The :ref:`pkgconfig <ref-classes-pkgconfig>` class provides a standard way to get header and
library information by using ``pkg-config``. This class aims to smooth
integration of ``pkg-config`` into libraries that use it.
During staging, BitBake installs ``pkg-config`` data into the
``sysroots/`` directory. By making use of sysroot functionality within
-``pkg-config``, the ``pkgconfig`` class no longer has to manipulate the
+``pkg-config``, the :ref:`pkgconfig <ref-classes-pkgconfig>` class no longer has to manipulate the
files.
.. _ref-classes-populate-sdk:
@@ -2113,7 +2159,7 @@
``populate_sdk.bbclass``
========================
-The ``populate_sdk`` class provides support for SDK-only recipes. For
+The :ref:`populate_sdk <ref-classes-populate-sdk>` class provides support for SDK-only recipes. For
information on advantages gained when building a cross-development
toolchain using the :ref:`ref-tasks-populate_sdk`
task, see the ":ref:`sdk-manual/appendix-obtain:building an sdk installer`"
@@ -2125,31 +2171,31 @@
``populate_sdk_*.bbclass``
==========================
-The ``populate_sdk_*`` classes support SDK creation and consist of the
+The :ref:`populate_sdk_* <ref-classes-populate-sdk-*>` classes support SDK creation and consist of the
following classes:
-- ``populate_sdk_base``: The base class supporting SDK creation under
+- :ref:`populate_sdk_base <ref-classes-populate-sdk-*>`: The base class supporting SDK creation under
all package managers (i.e. DEB, RPM, and opkg).
-- ``populate_sdk_deb``: Supports creation of the SDK given the Debian
+- :ref:`populate_sdk_deb <ref-classes-populate-sdk-*>`: Supports creation of the SDK given the Debian
package manager.
-- ``populate_sdk_rpm``: Supports creation of the SDK given the RPM
+- :ref:`populate_sdk_rpm <ref-classes-populate-sdk-*>`: Supports creation of the SDK given the RPM
package manager.
-- ``populate_sdk_ipk``: Supports creation of the SDK given the opkg
+- :ref:`populate_sdk_ipk <ref-classes-populate-sdk-*>`: Supports creation of the SDK given the opkg
(IPK format) package manager.
-- ``populate_sdk_ext``: Supports extensible SDK creation under all
+- :ref:`populate_sdk_ext <ref-classes-populate-sdk-*>`: Supports extensible SDK creation under all
package managers.
-The ``populate_sdk_base`` class inherits the appropriate
+The :ref:`populate_sdk_base <ref-classes-populate-sdk-*>` class inherits the appropriate
``populate_sdk_*`` (i.e. ``deb``, ``rpm``, and ``ipk``) based on
:term:`IMAGE_PKGTYPE`.
The base class ensures all source and destination directories are
established and then populates the SDK. After populating the SDK, the
-``populate_sdk_base`` class constructs two sysroots:
+:ref:`populate_sdk_base <ref-classes-populate-sdk-*>` class constructs two sysroots:
``${``\ :term:`SDK_ARCH`\ ``}-nativesdk``, which
contains the cross-compiler and associated tooling, and the target,
which contains a target root filesystem that is configured for the SDK
@@ -2162,9 +2208,9 @@
Finally, the base populate SDK class creates the toolchain environment
setup script, the tarball of the SDK, and the installer.
-The respective ``populate_sdk_deb``, ``populate_sdk_rpm``, and
-``populate_sdk_ipk`` classes each support the specific type of SDK.
-These classes are inherited by and used with the ``populate_sdk_base``
+The respective :ref:`populate_sdk_deb <ref-classes-populate-sdk-*>`, :ref:`populate_sdk_rpm <ref-classes-populate-sdk-*>`, and
+:ref:`populate_sdk_ipk <ref-classes-populate-sdk-*>` classes each support the specific type of SDK.
+These classes are inherited by and used with the :ref:`populate_sdk_base <ref-classes-populate-sdk-*>`
class.
For more information on the cross-development toolchain generation, see
@@ -2182,7 +2228,7 @@
``prexport.bbclass``
====================
-The ``prexport`` class provides functionality for exporting
+The :ref:`prexport <ref-classes-prexport>` class provides functionality for exporting
:term:`PR` values.
.. note::
@@ -2195,7 +2241,7 @@
``primport.bbclass``
====================
-The ``primport`` class provides functionality for importing
+The :ref:`primport <ref-classes-primport>` class provides functionality for importing
:term:`PR` values.
.. note::
@@ -2208,7 +2254,7 @@
``prserv.bbclass``
==================
-The ``prserv`` class provides functionality for using a :ref:`PR
+The :ref:`prserv <ref-classes-prserv>` class provides functionality for using a :ref:`PR
service <dev-manual/common-tasks:working with a pr service>` in order to
automatically manage the incrementing of the :term:`PR`
variable for each recipe.
@@ -2223,7 +2269,7 @@
``ptest.bbclass``
=================
-The ``ptest`` class provides functionality for packaging and installing
+The :ref:`ptest <ref-classes-ptest>` class provides functionality for packaging and installing
runtime tests for recipes that build software that provides these tests.
This class is intended to be inherited by individual recipes. However,
@@ -2250,7 +2296,7 @@
``python3-dir.bbclass``
=======================
-The ``python3-dir`` class provides the base version, location, and site
+The :ref:`python3-dir <ref-classes-python3-dir>` class provides the base version, location, and site
package location for Python 3.
.. _ref-classes-python3native:
@@ -2258,7 +2304,7 @@
``python3native.bbclass``
=========================
-The ``python3native`` class supports using the native version of Python
+The :ref:`python3native <ref-classes-python3native>` class supports using the native version of Python
3 built by the build system rather than support of the version provided
by the build host.
@@ -2267,7 +2313,7 @@
``python3targetconfig.bbclass``
===============================
-The ``python3targetconfig`` class supports using the native version of Python
+The :ref:`python3targetconfig <ref-classes-python3targetconfig>` class supports using the native version of Python
3 built by the build system rather than support of the version provided
by the build host, except that the configuration for the target machine
is accessible (such as correct installation directories). This also adds a
@@ -2279,7 +2325,7 @@
``qemu.bbclass``
================
-The ``qemu`` class provides functionality for recipes that either need
+The :ref:`qemu <ref-classes-qemu>` class provides functionality for recipes that either need
QEMU or test for the existence of QEMU. Typically, this class is used to
run programs for a target system on the build host using QEMU's
application emulation mode.
@@ -2289,7 +2335,7 @@
``recipe_sanity.bbclass``
=========================
-The ``recipe_sanity`` class checks for the presence of any host system
+The :ref:`recipe_sanity <ref-classes-recipe_sanity>` class checks for the presence of any host system
recipe prerequisites that might affect the build (e.g. variables that
are set or software that is present).
@@ -2298,7 +2344,7 @@
``relocatable.bbclass``
=======================
-The ``relocatable`` class enables relocation of binaries when they are
+The :ref:`relocatable <ref-classes-relocatable>` class enables relocation of binaries when they are
installed into the sysroot.
This class makes use of the :ref:`chrpath <ref-classes-chrpath>` class
@@ -2310,7 +2356,7 @@
``remove-libtool.bbclass``
==========================
-The ``remove-libtool`` class adds a post function to the
+The :ref:`remove-libtool <ref-classes-remove-libtool>` class adds a post function to the
:ref:`ref-tasks-install` task to remove all ``.la`` files
installed by ``libtool``. Removing these files results in them being
absent from both the sysroot and target packages.
@@ -2322,14 +2368,14 @@
.. note::
- The ``remove-libtool`` class is not enabled by default.
+ The :ref:`remove-libtool <ref-classes-remove-libtool>` class is not enabled by default.
.. _ref-classes-report-error:
``report-error.bbclass``
========================
-The ``report-error`` class supports enabling the :ref:`error reporting
+The :ref:`report-error <ref-classes-report-error>` class supports enabling the :ref:`error reporting
tool <dev-manual/common-tasks:using the error reporting tool>`",
which allows you to submit build error information to a central database.
@@ -2344,7 +2390,7 @@
``rm_work.bbclass``
===================
-The ``rm_work`` class supports deletion of temporary workspace, which
+The :ref:`rm_work <ref-classes-rm-work>` class supports deletion of temporary workspace, which
can ease your hard drive demands during builds.
The OpenEmbedded build system can use a substantial amount of disk space
@@ -2354,17 +2400,16 @@
recipe are no longer needed. However, by default, the build system
preserves these files for inspection and possible debugging purposes. If
you would rather have these files deleted to save disk space as the
-build progresses, you can enable ``rm_work`` by adding the following to
-your ``local.conf`` file, which is found in the :term:`Build Directory`.
-::
+build progresses, you can enable :ref:`rm_work <ref-classes-rm-work>` by adding the following to
+your ``local.conf`` file, which is found in the :term:`Build Directory`::
INHERIT += "rm_work"
If you are
modifying and building source code out of the work directory for a
-recipe, enabling ``rm_work`` will potentially result in your changes to
+recipe, enabling :ref:`rm_work <ref-classes-rm-work>` will potentially result in your changes to
the source being lost. To exclude some recipes from having their work
-directories deleted by ``rm_work``, you can add the names of the recipe
+directories deleted by :ref:`rm_work <ref-classes-rm-work>`, you can add the names of the recipe
or recipes you are working on to the :term:`RM_WORK_EXCLUDE` variable, which
can also be set in your ``local.conf`` file. Here is an example::
@@ -2375,26 +2420,26 @@
``rootfs*.bbclass``
===================
-The ``rootfs*`` classes support creating the root filesystem for an
+The :ref:`rootfs* <ref-classes-rootfs*>` classes support creating the root filesystem for an
image and consist of the following classes:
-- The ``rootfs-postcommands`` class, which defines filesystem
+- The :ref:`rootfs-postcommands <ref-classes-rootfs*>` class, which defines filesystem
post-processing functions for image recipes.
-- The ``rootfs_deb`` class, which supports creation of root filesystems
+- The :ref:`rootfs_deb <ref-classes-rootfs*>` class, which supports creation of root filesystems
for images built using ``.deb`` packages.
-- The ``rootfs_rpm`` class, which supports creation of root filesystems
+- The :ref:`rootfs_rpm <ref-classes-rootfs*>` class, which supports creation of root filesystems
for images built using ``.rpm`` packages.
-- The ``rootfs_ipk`` class, which supports creation of root filesystems
+- The :ref:`rootfs_ipk <ref-classes-rootfs*>` class, which supports creation of root filesystems
for images built using ``.ipk`` packages.
-- The ``rootfsdebugfiles`` class, which installs additional files found
+- The :ref:`rootfsdebugfiles <ref-classes-rootfs*>` class, which installs additional files found
on the build host directly into the root filesystem.
The root filesystem is created from packages using one of the
-``rootfs*.bbclass`` files as determined by the
+:ref:`rootfs*.bbclass <ref-classes-rootfs*>` files as determined by the
:term:`PACKAGE_CLASSES` variable.
For information on how root filesystem images are created, see the
@@ -2406,7 +2451,7 @@
``sanity.bbclass``
==================
-The ``sanity`` class checks to see if prerequisite software is present
+The :ref:`sanity <ref-classes-sanity>` class checks to see if prerequisite software is present
on the host system so that users can be notified of potential problems
that might affect their build. The class also performs basic user
configuration checks from the ``local.conf`` configuration file to
@@ -2418,7 +2463,7 @@
``scons.bbclass``
=================
-The ``scons`` class supports recipes that need to build software that
+The :ref:`scons <ref-classes-scons>` class supports recipes that need to build software that
uses the SCons build system. You can use the
:term:`EXTRA_OESCONS` variable to specify
additional configuration options you want to pass SCons command line.
@@ -2428,7 +2473,7 @@
``sdl.bbclass``
===============
-The ``sdl`` class supports recipes that need to build software that uses
+The :ref:`sdl <ref-classes-sdl>` class supports recipes that need to build software that uses
the Simple DirectMedia Layer (SDL) library.
.. _ref-classes-python_setuptools_build_meta:
@@ -2436,7 +2481,7 @@
``python_setuptools_build_meta.bbclass``
========================================
-The ``python_setuptools_build_meta`` class enables building Python modules which
+The :ref:`python_setuptools_build_meta <ref-classes-python_setuptools_build_meta>` class enables building Python modules which
declare the
`PEP-517 <https://www.python.org/dev/peps/pep-0517/>`__ compliant
``setuptools.build_meta`` ``build-backend`` in the ``[build-system]``
@@ -2452,14 +2497,14 @@
``setuptools3.bbclass``
=======================
-The ``setuptools3`` class supports Python version 3.x extensions that
+The :ref:`setuptools3 <ref-classes-setuptools3>` class supports Python version 3.x extensions that
use build systems based on ``setuptools`` (e.g. only have a ``setup.py`` and
have not migrated to the official ``pyproject.toml`` format). If your recipe
-uses these build systems, the recipe needs to inherit the ``setuptools3`` class.
+uses these build systems, the recipe needs to inherit the :ref:`setuptools3 <ref-classes-setuptools3>` class.
.. note::
- The ``setuptools3`` class :ref:`ref-tasks-compile` task now calls
+ The :ref:`setuptools3 <ref-classes-setuptools3>` class :ref:`ref-tasks-compile` task now calls
``setup.py bdist_wheel`` to build the ``wheel`` binary archive format
(See `PEP-427 <https://www.python.org/dev/peps/pep-0427/>`__).
@@ -2470,7 +2515,7 @@
.. note::
- The ``setuptools3`` class :ref:`ref-tasks-install` task now installs the ``wheel``
+ The :ref:`setuptools3 <ref-classes-setuptools3>` class :ref:`ref-tasks-install` task now 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 with
wheels, for example it creates files outside of the Python module or
@@ -2482,12 +2527,12 @@
``setuptools3_legacy.bbclass``
==============================
-The ``setuptools3_legacy`` class supports Python version 3.x extensions that use
+The :ref:`setuptools3_legacy <ref-classes-setuptools3_legacy>` class supports Python version 3.x extensions that use
build systems based on ``setuptools`` (e.g. only have a ``setup.py`` and have
not migrated to the official ``pyproject.toml`` format). Unlike
``setuptools3.bbclass``, this uses the traditional ``setup.py`` ``build`` and
``install`` commands and not wheels. This use of ``setuptools`` like this is
-`deprecated <https://github.com/pypa/setuptools/blob/main/CHANGES.rst#v5830>`_
+`deprecated <https://github.com/pypa/setuptools/blob/main/CHANGES.rst#v5830>`__
but still relatively common.
.. _ref-classes-setuptools3-base:
@@ -2495,7 +2540,7 @@
``setuptools3-base.bbclass``
============================
-The ``setuptools3-base`` class provides a reusable base for other classes
+The :ref:`setuptools3-base <ref-classes-setuptools3-base>` class provides a reusable base for other classes
that support building Python version 3.x extensions. If you need
functionality that is not provided by the :ref:`setuptools3 <ref-classes-setuptools3>` class, you may
want to ``inherit setuptools3-base``. Some recipes do not need the tasks
@@ -2506,14 +2551,14 @@
``sign_rpm.bbclass``
====================
-The ``sign_rpm`` class supports generating signed RPM packages.
+The :ref:`sign_rpm <ref-classes-sign_rpm>` class supports generating signed RPM packages.
.. _ref-classes-sip:
``sip.bbclass``
===============
-The ``sip`` class supports recipes that build or package SIP-based
+The :ref:`sip <ref-classes-sip>` class supports recipes that build or package SIP-based
Python bindings.
.. _ref-classes-siteconfig:
@@ -2521,7 +2566,7 @@
``siteconfig.bbclass``
======================
-The ``siteconfig`` class provides functionality for handling site
+The :ref:`siteconfig <ref-classes-siteconfig>` class provides functionality for handling site
configuration. The class is used by the
:ref:`autotools <ref-classes-autotools>` class to accelerate the
:ref:`ref-tasks-configure` task.
@@ -2531,7 +2576,7 @@
``siteinfo.bbclass``
====================
-The ``siteinfo`` class provides information about the targets that might
+The :ref:`siteinfo <ref-classes-siteinfo>` class provides information about the targets that might
be needed by other classes or recipes.
As an example, consider Autotools, which can require tests that must
@@ -2552,7 +2597,7 @@
``sstate.bbclass``
==================
-The ``sstate`` class provides support for Shared State (sstate). By
+The :ref:`sstate <ref-classes-sstate>` class provides support for Shared State (sstate). By
default, the class is enabled through the
:term:`INHERIT_DISTRO` variable's default value.
@@ -2565,7 +2610,7 @@
``staging.bbclass``
===================
-The ``staging`` class installs files into individual recipe work
+The :ref:`staging <ref-classes-staging>` class installs files into individual recipe work
directories for sysroots. The class contains the following key tasks:
- The :ref:`ref-tasks-populate_sysroot` task,
@@ -2578,7 +2623,7 @@
installs the files into the individual recipe work directories (i.e.
:term:`WORKDIR`).
-The code in the ``staging`` class is complex and basically works in two
+The code in the :ref:`staging <ref-classes-staging>` class is complex and basically works in two
stages:
- *Stage One:* The first stage addresses recipes that have files they
@@ -2665,7 +2710,7 @@
``syslinux.bbclass``
====================
-The ``syslinux`` class provides syslinux-specific functions for building
+The :ref:`syslinux <ref-classes-syslinux>` class provides syslinux-specific functions for building
bootable images.
The class supports the following variables:
@@ -2708,7 +2753,7 @@
``systemd.bbclass``
===================
-The ``systemd`` class provides support for recipes that install systemd
+The :ref:`systemd <ref-classes-systemd>` class provides support for recipes that install systemd
unit files.
The functionality for this class is disabled unless you have "systemd"
@@ -2734,7 +2779,7 @@
unless you have set
:term:`SYSTEMD_AUTO_ENABLE` to "disable".
-For more information on ``systemd``, see the
+For more information on :ref:`systemd <ref-classes-systemd>`, see the
":ref:`dev-manual/common-tasks:selecting an initialization manager`"
section in the Yocto Project Development Tasks Manual.
@@ -2743,17 +2788,17 @@
``systemd-boot.bbclass``
========================
-The ``systemd-boot`` class provides functions specific to the
+The :ref:`systemd-boot <ref-classes-systemd-boot>` class provides functions specific to the
systemd-boot bootloader for building bootable images. This is an
internal class and is not intended to be used directly.
.. note::
- The ``systemd-boot`` class is a result from merging the ``gummiboot`` class
+ The :ref:`systemd-boot <ref-classes-systemd-boot>` class is a result from merging the ``gummiboot`` class
used in previous Yocto Project releases with the ``systemd`` project.
Set the :term:`EFI_PROVIDER` variable to
-"systemd-boot" to use this class. Doing so creates a standalone EFI
+":ref:`systemd-boot <ref-classes-systemd-boot>`" to use this class. Doing so creates a standalone EFI
bootloader that is not dependent on systemd.
For information on more variables used and supported in this class, see
@@ -2770,16 +2815,16 @@
``terminal.bbclass``
====================
-The ``terminal`` class provides support for starting a terminal session.
+The :ref:`terminal <ref-classes-terminal>` class provides support for starting a terminal session.
The :term:`OE_TERMINAL` variable controls which
terminal emulator is used for the session.
-Other classes use the ``terminal`` class anywhere a separate terminal
+Other classes use the :ref:`terminal <ref-classes-terminal>` class anywhere a separate terminal
session needs to be started. For example, the
:ref:`patch <ref-classes-patch>` class assuming
:term:`PATCHRESOLVE` is set to "user", the
:ref:`cml1 <ref-classes-cml1>` class, and the
-:ref:`devshell <ref-classes-devshell>` class all use the ``terminal``
+:ref:`devshell <ref-classes-devshell>` class all use the :ref:`terminal <ref-classes-terminal>`
class.
.. _ref-classes-testimage:
@@ -2787,7 +2832,7 @@
``testimage.bbclass``
=====================
-The ``testimage`` class supports running automated tests against
+The :ref:`testimage <ref-classes-testimage>` class supports running automated tests against
images using QEMU and on actual hardware. The classes handle loading the
tests and starting the image. To use the classes, you need to perform
steps to set up the environment.
@@ -2799,7 +2844,7 @@
The tests are commands that run on the target system over ``ssh``. Each
test is written in Python and makes use of the ``unittest`` module.
-The ``testimage`` class runs tests on an image when called using the
+The :ref:`testimage <ref-classes-testimage>` class runs tests on an image when called using the
following::
$ bitbake -c testimage image
@@ -2819,7 +2864,7 @@
===================
This class supports running automated tests against software development
-kits (SDKs). The ``testsdk`` class runs tests on an SDK when called
+kits (SDKs). The :ref:`testsdk <ref-classes-testsdk>` class runs tests on an SDK when called
using the following::
$ bitbake -c testsdk image
@@ -2827,7 +2872,7 @@
.. note::
Best practices include using :term:`IMAGE_CLASSES` rather than
- :term:`INHERIT` to inherit the ``testsdk`` class for automated SDK
+ :term:`INHERIT` to inherit the :ref:`testsdk <ref-classes-testsdk>` class for automated SDK
testing.
.. _ref-classes-texinfo:
@@ -2853,7 +2898,7 @@
``toaster.bbclass``
===================
-The ``toaster`` class collects information about packages and images and
+The :ref:`toaster <ref-classes-toaster>` class collects information about packages and images and
sends them as events that the BitBake user interface can receive. The
class is enabled when the Toaster user interface is running.
@@ -2864,7 +2909,7 @@
``toolchain-scripts.bbclass``
=============================
-The ``toolchain-scripts`` class provides the scripts used for setting up
+The :ref:`toolchain-scripts <ref-classes-toolchain-scripts>` class provides the scripts used for setting up
the environment for installed SDKs.
.. _ref-classes-typecheck:
@@ -2872,7 +2917,7 @@
``typecheck.bbclass``
=====================
-The ``typecheck`` class provides support for validating the values of
+The :ref:`typecheck <ref-classes-typecheck>` class provides support for validating the values of
variables set at the configuration level against their defined types.
The OpenEmbedded build system allows you to define the type of a
variable using the "type" varflag. Here is an example::
@@ -2884,7 +2929,7 @@
``uboot-config.bbclass``
========================
-The ``uboot-config`` class provides support for U-Boot configuration for
+The :ref:`uboot-config <ref-classes-uboot-config>` class provides support for U-Boot configuration for
a machine. Specify the machine in your recipe as follows::
UBOOT_CONFIG ??= <default>
@@ -2915,7 +2960,7 @@
``UNINATIVE_URL`` and ``UNINATIVE_CHECKSUM`` appropriately. For an
example, see the ``meta/conf/distro/include/yocto-uninative.inc``.
-The ``uninative`` class is also used unconditionally by the extensible
+The :ref:`uninative <ref-classes-uninative>` class is also used unconditionally by the extensible
SDK. When building the extensible SDK, ``uninative-tarball`` is built
and the resulting tarball is included within the SDK.
@@ -2924,12 +2969,12 @@
``update-alternatives.bbclass``
===============================
-The ``update-alternatives`` class helps the alternatives system when
+The :ref:`update-alternatives <ref-classes-update-alternatives>` class helps the alternatives system when
multiple sources provide the same command. This situation occurs when
several programs that have the same or similar function are installed
with the same name. For example, the ``ar`` command is available from
the ``busybox``, ``binutils`` and ``elfutils`` packages. The
-``update-alternatives`` class handles renaming the binaries so that
+:ref:`update-alternatives <ref-classes-update-alternatives>` class handles renaming the binaries so that
multiple packages can be installed without conflicts. The ``ar`` command
still works regardless of which packages are installed or subsequently
removed. The class renames the conflicting binary in each package and
@@ -2962,7 +3007,7 @@
``update-rc.d.bbclass``
=======================
-The ``update-rc.d`` class uses ``update-rc.d`` to safely install an
+The :ref:`update-rc.d <ref-classes-update-rc.d>` class uses ``update-rc.d`` to safely install an
initialization script on behalf of the package. The OpenEmbedded build
system takes care of details such as making sure the script is stopped
before a package is removed and started when the package is installed.
@@ -2976,7 +3021,7 @@
``useradd*.bbclass``
====================
-The ``useradd*`` classes support the addition of users or groups for
+The :ref:`useradd* <ref-classes-useradd>` classes support the addition of users or groups for
usage by the package on the target. For example, if you have packages
that contain system services that should be run under their own user or
group, you can use these classes to enable creation of the user or
@@ -2985,16 +3030,16 @@
recipe in the :term:`Source Directory` provides a simple
example that shows how to add three users and groups to two packages.
-The ``useradd_base`` class provides basic functionality for user or
+The :ref:`useradd_base <ref-classes-useradd>` class provides basic functionality for user or
groups settings.
-The ``useradd*`` classes support the
+The :ref:`useradd* <ref-classes-useradd>` classes support the
:term:`USERADD_PACKAGES`,
:term:`USERADD_PARAM`,
:term:`GROUPADD_PARAM`, and
:term:`GROUPMEMS_PARAM` variables.
-The ``useradd-staticids`` class supports the addition of users or groups
+The :ref:`useradd-staticids <ref-classes-useradd>` class supports the addition of users or groups
that have static user identification (``uid``) and group identification
(``gid``) values.
@@ -3020,7 +3065,7 @@
.. note::
- You do not use the ``useradd-staticids`` class directly. You either enable
+ You do not use the :ref:`useradd-staticids <ref-classes-useradd>` class directly. You either enable
or disable the class by setting the :term:`USERADDEXTENSION` variable. If you
enable or disable the class in a configured system, :term:`TMPDIR` might
contain incorrect ``uid`` and ``gid`` values. Deleting the :term:`TMPDIR`
@@ -3031,7 +3076,7 @@
``utility-tasks.bbclass``
=========================
-The ``utility-tasks`` class provides support for various "utility" type
+The :ref:`utility-tasks <ref-classes-utility-tasks>` class provides support for various "utility" type
tasks that are applicable to all recipes, such as
:ref:`ref-tasks-clean` and
:ref:`ref-tasks-listtasks`.
@@ -3044,7 +3089,7 @@
``utils.bbclass``
=================
-The ``utils`` class provides some useful Python functions that are
+The :ref:`utils <ref-classes-utils>` class provides some useful Python functions that are
typically used in inline Python expressions (e.g. ``${@...}``). One
example use is for ``bb.utils.contains()``.
@@ -3056,7 +3101,7 @@
``vala.bbclass``
================
-The ``vala`` class supports recipes that need to build software written
+The :ref:`vala <ref-classes-vala>` class supports recipes that need to build software written
using the Vala programming language.
.. _ref-classes-waf:
@@ -3064,7 +3109,7 @@
``waf.bbclass``
===============
-The ``waf`` class supports recipes that need to build software that uses
+The :ref:`waf <ref-classes-waf>` class supports recipes that need to build software that uses
the Waf build system. You can use the
:term:`EXTRA_OECONF` or
:term:`PACKAGECONFIG_CONFARGS` variables