Compare commits

..

184 Commits

Author SHA1 Message Date
Richard Purdie
d3cda9a3e0 build-appliance-image: Update to langdale head revision
(From OE-Core rev: 9237ffc4feee2dd6ff5bdd672072509ef9e82f6d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 16:30:23 +00:00
Michael Opdenacker
80d22fc07f create-spdx.bbclass: remove unused SPDX_INCLUDE_PACKAGED
[YOCTO #14948]

(From OE-Core rev: 88ca1b07abf1a8641a0eb8382e9322349a150c98)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 89f1abd5e00807cf179ddf658f74d48119523b0c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
ciarancourtney
c35857bd24 wic: swap partitions are not added to fstab
- Regression in 7aa678ce804c21dc1dc51b9be442671bc33c4041

(From OE-Core rev: 8fdb75c0f0f7458305ccae657cf2722520e00572)

Signed-off-by: Ciaran Courtney <ciaran.courtney@activeenergy.ie>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f1243572ad6b6303fe562e4eb7a9826fd51ea3c3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Ross Burton
d8917f76bc sanity: check for GNU tar specifically
We need the system tar to be GNU tar, as we reply on --xattrs.  Some
distributions may be using libarchive's tar binary, which is definitely
not as featureful, so check for this and abort early with a clear
message instead of later with mysterious errors.

(From OE-Core rev: fd92cdc6d2b9b3b808503b3274860a7c301587cb)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 7dd2b1cd1bb10e67485dab8600c0787df6c2eee7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Alexander Kanavin
d5add7c5b7 quilt: backport a patch to address grep 3.8 failures
(From OE-Core rev: a46aad035d800193b740bad2431ce30fae736a23)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit b5001af5c711a373bd2f1ea108c8b597dd40faca)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Bernhard Rosenkränzer
e65081b949 cmake-native: Fix host tool contamination
[v2 hopefully fixes the From: mangling by the ML, no functional changes]

Trying to build cmake-native on a host system where curl was built with cmake
(resulting in CURLConfig.cmake and friends, which do not use the same naming
schemes expected by cmake-native's build process, being installed to a system
wide cmake directory like /usr/lib64/cmake/CURL) results in undefined
references to all libcurl symbols.

The problem is that cmake-native sees and uses the system wide
/usr/lib64/cmake/CURL/CURLConfig.cmake, which defines CURL::libcurl and
CURL::curl as opposed to setting ${CURL_LIBRARIES} as expected by
cmake-native.

find_package(CURL) (cmake-native's CMakeLists.txt, line 478) succeeds, but
incorrectly uses the system wide CURLConfig.cmake, resulting
CMAKE_CURL_LIBRARIES to be set to an empty string (cmake-native's
CMakeLists.txt, line 484), causing the cmake-native build to miss -lcurl.

The simplest fix is to let cmake know the right value for
CURL_LIBRARIES. Making it -lcurl should always work with libcurl-native
in recipe-sysroot-native.

[YOCTO #14951]

(From OE-Core rev: 62b117c382ffd65f6c5d808699b664f70ba6f2d8)

Signed-off-by: Bernhard Rosenkränzer <bero@baylibre.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 2659c735a464c956b4fca0894a5aed27a0fe7e37)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Alexander Kanavin
027ec0ecf5 lttng-modules: upgrade 2.13.4 -> 2.13.5
2022-08-19 (National Potato Day) LTTng modules 2.13.5
	* Fix: incorrect stub prototypes when CONFIG_HAVE_SYSCALL_TRACEPOINTS=n
	* fix: mm/tracing: add 'accounted' entry into output of allocation tracepoints (v6.0)
	* fix: block: remove bdevname (v6.0)
	* fix: fs/jbd2: Fix the documentation of the jbd2_write_superblock() callers (v6.0)
	* fix: tie compaction probe build to CONFIG_COMPACTION
	* fix: net: skb: introduce kfree_skb_reason() (v5.15.58..v5.16)
	* fix: workqueue: Fix type of cpu in trace event (v5.19)
	* fix: fs: Remove flags parameter from aops->write_begin (v5.19)
	* fix: mm/page_alloc: fix tracepoint mm_page_alloc_zone_locked() (v5.19)

(From OE-Core rev: cbb85f35d342ffd1c8a0f147f139a8d1a3084aae)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 335c60e76b341014bd69eaac0a4b281036a94916)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Alexander Kanavin
54fb46c66e shadow: update 4.12.1 -> 4.12.3
4.12.2 changes
	* Address CVE-2013-4235
	* Fix uk manpages

4.12.3 changes
	* Revert the removal of subid_init as pointed out by Balint.
	* Address CVE-2013-4235 (TOCTTOU when copying directories)

(From OE-Core rev: 30fe8df131a3ef5efa5c35e69fce7b2d1bdc2f7d)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 5b9fc88d06f79e8dbd2375172689f2fbf3e2a8a3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Ross Burton
63e80a0233 sudo: backport fix for CVE-2022-43995
(From OE-Core rev: a41a5f310246dcd9dbdb4537d59bc0579c3b1052)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Ross Burton
c689d5d4e3 pixman: backport fix for CVE-2022-44638
(From OE-Core rev: 23df4760ebc153c484d467e51b414910c570a6f8)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Robert Joslyn
2ac597044a curl: Backport CVE fixes
Backport fixes for:
 - CVE-2022-32221 POST following PUT confusion
 - CVE-2022-35260 .netrc parser out-of-bounds access
 - CVE-2022-42915 HTTP proxy double-free
 - CVE-2022-42916 HSTS bypass via IDN

(From OE-Core rev: 724c8b65fe307af602b6bf7e3704dfb25bc51ee9)

Signed-off-by: Robert Joslyn <robert.joslyn@redrectangle.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-14 15:59:15 +00:00
Mark Asselstine
79434a17eb bitbake: bitbake: bitbake-layers: checkout layer(s) branch when clone exists
[YOCTO #7852]

Fixes 'bitbake-layers layerindex-fetch --branch kirkstone meta-arm'
not checking out the branch if the repo is already cloned and on a
different branch.

If a clone of a layer being added already exists check what branch it
is on and if necessary attempt to switch to the given branch. If the
switch fails to happen the git error will be reported. We also warn if
there are uncommitted changes as the changes might go unnoticed and
result in unexpected behaviors.

(Bitbake rev: 138dd7883ee2c521900b29985b6d24a23d96563c)

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d2cb388f58a37db2149fad34e4572d954e6e5441)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-10 14:43:30 +00:00
Justin Bronder
25f355e0ef bitbake: asyncrpc: serv: correct closed client socket detection
If the client socket is closed, asyncio.StreamReader.readline() will
return an empty bytes object, not None.

This prevents multiple tracebacks being logged by bitbake-hashserv each
time bitbake is started and performs a connection check.

(Bitbake rev: 4bdd9ba43f34a1473db31a6a3b10bd33e358fe3a)

Signed-off-by: Justin Bronder <jsbronder@cold-front.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 2d07f252704dff7747fa1f9adf223a452806717f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-10 14:43:30 +00:00
Ross Burton
186d179614 bitbake: fetch2/git: don't set core.fsyncobjectfiles=0
This git configuration variable is deprecated in 2.36.0 onwards, so git
warns in the logs for every git call.

Luckily the default value has always been false[1], so we can just remove
this.

[ YOCTO #14939 ]

[1] aafe9fbaf4

(Bitbake rev: 13f86aeb53cd73c03bfb2f00fe923b51ec8d1c73)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 8ad310633e0c5d5593631c1196cbdde30147efce)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-10 14:43:30 +00:00
Michael Opdenacker
975e3fb53c bitbake: bitbake-user-manual: details about variable flags starting with underscore
Fixes [YOCTO #14140]

(Bitbake rev: 8a08e207854810b40b53946ec94065a6a560a7a5)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0f3e9d87168813ce49995ff04bccdce11c5f7b47)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-10 14:43:30 +00:00
Steve Sakoman
e881560619 poky.conf: bump version for 4.1.1
(From meta-yocto rev: e911b760d279774d8ab24529a2ffd82c02976feb)

Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:56 +00:00
Etienne Cordonnier
6054c58908 mirrors.bbclass: use shallow tarball for binutils-native
This is useful e.g. when using meta-clang, which introduces a dependency to binutils-native, and then a
full tarball of binutils is fetched additionally to a shallow tarball.

The original BB_GIT_SHALLOW lines were added because of https://www.mail-archive.com/yocto@lists.yoctoproject.org/msg08752.html

(From OE-Core rev: 0eee57ef03908c04e1567889f72d7187b5c1f657)

Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit bd83b8b502ae935c75b59aaf71bbb531c9771dcc)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Alexander Kanavin
cb9d9fd076 rust: install rustfmt for riscv32 as well
With the above rust arch fixes it builds just fine.

(From OE-Core rev: 655b9a0bbe07b33db8aa6ebf7c49f3d9074cc5e0)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f417ae30c79fac99e2549324ed351f6f63cc4a25)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Alexander Kanavin
7b401c7540 rust-target-config: match riscv target names with what rust expects
Official rust risc-v targets are prefixed with riscv32gc- and riscv64gc-:
https://doc.rust-lang.org/nightly/rustc/platform-support.html

Particularly crossbeam-utils make important build time decisions
for atomics based on those names, and so we need to match ours
with official targets.

On the other hand, the actual definitions for those targets do not
use the 'gc' suffix in 'arch' and 'llvm-target' fields, and so we
need to follow that too, to avoid cryptic mismatch errors from rust-llvm:
https://github.com/rust-lang/rust/blob/master/compiler/rustc_target/src/spec/riscv32gc_unknown_linux_gnu.rs

(From OE-Core rev: 2daa8d76369cd06e5c357e393e3145e08f3d6760)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 1cfb9c8a59d98ccc9b0510cd28fb933f72fb6b6c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Sean Anderson
62c4b68a11 kernel-fitimage: Use KERNEL_OUTPUT_DIR where appropriate
We have a specific variable for the path to the boot directory. Use it
instead of open-coding this path.

(From OE-Core rev: dda8017274e71daa7aa4d8a3a15e128df213b0de)

Signed-off-by: Sean Anderson <sean.anderson@seco.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 725b75e83bc2b2111f2ab5103b7e7f60d6d3f34e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Sean Anderson
1b5b1ba8fb kernel: Clear SYSROOT_DIRS instead of replacing sysroot_stage_all
Replacing sysroot_stage_all by a no-op recipe makes it difficult for
bbappends to stage files intentionally. Instead, just clear
SYSROOT_DIRS, allowing other bbappends to easily add new directories.

(From OE-Core rev: d9081df0dc62f733bef643340af678eeba74fe89)

Signed-off-by: Sean Anderson <sean.anderson@seco.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 849791e7086463a4c7c53c2c1ed9603a6c3a080d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Sean Anderson
6bded7cb12 uboot-sign: Fix using wrong KEY_REQ_ARGS
When generating our SPL-verifying certificate, we use FIT_KEY_REQ_ARGS,
which is intended for the U-Boot-verifying certificate. Instead, use
UBOOT_FIT_KEY_REQ_ARGS.

Fixes: 0e6b0fefa0 ("u-boot: Use a different Key for SPL signing")
(From OE-Core rev: f01b15fcffd1a628a17caf1e94753c8cd09ea48f)

Signed-off-by: Sean Anderson <sean.anderson@seco.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit a2d939ccb182a1ad29280d236b9f9e1d09527af1)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Jose Quaresma
d18ec217b3 kernel-yocto: improve fatal error messages of symbol_why.py
Improve the fatal error message of the yocto-kernel-tools symbol_why.py
and shows the command that generate the error as it can help understand
the root cause of the error.

(From OE-Core rev: 97cb48ce09d80e5496e4f887a8cf02125c66c6c5)

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 54ae08779071f2e97bff0ff6514ede3124312c3b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Claus Stovgaard
0771c25330 gstreamer1.0-libav: fix errors with ffmpeg 5.x
Backport of patch already present upstream to fix issues with invalid
characters for GLIB when combining gstreamer1.0-libav with ffmpeg 5.x.

Remove when gstreamer1.0-libav is upgraded to 1.21.1 or above

(From OE-Core rev: 8a837dba82d6e665406c2ee0543ee0135fe2ae3a)

Signed-off-by: Claus Stovgaard <claus.stovgaard@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 703ff945557ad307bbe4ba0b0b7f1a2e5b4b847e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Peter Kjellerstedt
f02d7f4547 externalsrc.bbclass: Remove a trailing slash from ${B}
The trailing slash in ${B} caused -fdebug-prefix-map=${B}=... to not
match as intended, resulting in ${TMPDIR} ending up in files in
${PN}-dbg when externalsrc was in use, which in turn triggered buildpath
QA warnings.

(From OE-Core rev: c7e94e74eceef0b22d09d80d0da6ddcd86d9b12e)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 9b5031ed5a0d102905fa75acc418246c23df6eef)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Sergei Zhmylev
d051fc188b wic: honor the SOURCE_DATE_EPOCH in case of updated fstab
In case user requested to build a binary repeatable package,
it's required to honor the SOURCE_DATE_EPOCH environment
variable. So forcefully set mtime inside all the routines
which modify fstab in case it is updated.

(From OE-Core rev: 4d3f43fe06186b6580395a161fdbc4470b8aab62)

Signed-off-by: Sergei Zhmylev <s.zhmylev@yadro.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 99719a3712a88dce8450994d995803e126e49115)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Martin Jansa
22c5e7fa3e externalsrc.bbclass: fix git repo detection
* fix issue introduced in:
  https://git.openembedded.org/openembedded-core/commit/?id=95fbac8dcad6c93f4c9737e9fe13e92ab6befa09

* it added check for s_dir + git-dir (typically '.git') isn't
  the same as ${TOPDIR} + git-dir, but due to copy-paste issue
  it was just comparing it with s_dir + git-dir again, resulting
  in most external repos (where git-dir is '.git') to be processed
  as regular directory (not taking advantage of git write-tree).

* normally this wouldn't be an issue, but for big repo with a lot of
  files this added a lot of checksums in:
  d.setVarFlag('do_compile', 'file-checksums', '${@srctree_hash_files(d)}')

  and I mean *a lot, e.g. in chromium build it was 380227 paths
  which still wouldn't that bad, but the checksum processing in
  siggen.py isn't trivial and just looping through all these
  checksums takes very long time (over 1000sec on fast NVME drive
  with warm cache) and then
  https://git.openembedded.org/bitbake/commit/?id=b4975d2ecf615ac4c240808fbc5a3f879a93846b
  made the processing a bit more complicated and the loop in
  get_taskhash() function took 6448sec and to make things worse
  there was no output from bitbake during that time, so even with -DDD
  it looks like this:

  DEBUG: virtual/libgles2 resolved to: mesa (langdale/oe-core/meta/recipes-graphics/mesa/mesa_22.2.0.bb)
  Bitbake still alive (no events for 600s). Active tasks:
  Bitbake still alive (no events for 1200s). Active tasks:
  Bitbake still alive (no events for 1800s). Active tasks:
  Bitbake still alive (no events for 2400s). Active tasks:
  Bitbake still alive (no events for 3000s). Active tasks:
  Bitbake still alive (no events for 3600s). Active tasks:
  Bitbake still alive (no events for 4200s). Active tasks:
  Bitbake still alive (no events for 4800s). Active tasks:
  Bitbake still alive (no events for 5400s). Active tasks:
  Bitbake still alive (no events for 6000s). Active tasks:
  DEBUG: Starting bitbake-worker

  without -DDD it will get stuck for almost 2 hours in:
  "Initialising tasks..."
  before it finally writes sstate summary like:
  "Sstate summary: Wanted 3102 Local 0 Mirrors 0 Missed 3102 Current 1483 (0% match, 32% complete)"

* fix the copy&paste typo to use git work-tree in most cases, but
  be aware that this issue still exists for huge local source
  trees not in git

[YOCTO #14942]

(From OE-Core rev: 43d3a1a314cf4cab1b384ebf81e10610f18ed12c)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 9102e5a94b8146cb1da27afbe41d3db999a914ff)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Luca Boccassi
cd873bc5de systemd: add systemd-creds and systemd-cryptenroll to systemd-extra-utils
ERROR: systemd-1_251.4-r0 do_package: QA Issue: systemd: Files/directories were installed but not shipped in any package:
  /usr/bin/systemd-creds
  /usr/bin/systemd-cryptenroll

(From OE-Core rev: 34cdacb072644f4bd610c48a789e4001d374e190)

Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit b3763dd26d324a7ce575586f306b8aec4b1103b3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Keiya Nobuta
2f52d04e17 create-spdx: Remove ";name=..." for downloadLocation
(From OE-Core rev: e2258c34a7a587f67b233617613a12fe4549932a)

Signed-off-by: Keiya Nobuta <nobuta.keiya@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit bbecab53d1b27f3bb8c5882cb0ec39b04ef300a3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Bruce Ashfield
3d58ac1ddd kern-tools: fix relative path processing
The previous fix for processing of paths with relative components, broke
uses cases that were a mix of patches and configuration fragments.

Updating the SRCREV to include a simplied fix for relative paths, and
a cleanup patch from Jose:

[
  Author: Jose Quaresma <quaresma.jose@gmail.com>
  Date:   Thu Sep 29 16:37:23 2022 +0000

      scc: only look for error in scc_output_file if it has valid content

      When process_file function fails the output of the processed script is show to
      the user, some parsing is performed as well to look for common errors so we
      can point to the right input file.

      This can only be done when the scc_output_file have some valid content
      otherwise it will show invalid messages to the user.

      Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
      Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>

  Author: Bruce Ashfield <bruce.ashfield@gmail.com>
  Date:   Wed Oct 5 19:13:33 2022 +0000

      spp: ensure that prefix check uses absolute paths

      The previous fix for this issue was too broad, and impacted
      all calls to the prefix check and removal. With this change,
      we only expand the input on scc/spp operations that may
      execute with relative paths.

      Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
]

(From OE-Core rev: d56e29947176976e172a3e731a6ae37df98af4bb)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 533720a1756454447341769c4a0969fce8d6f287)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Mingli Yu
e6428f3c1c grub: disable build on armv7ve/a with hardfp
The commit(75dbdea940 grub: Allow build on armv7ve/a with softfp)
enable build on armv7ve/a with softfp, but it acutally enable
build on armv7ve/a with hardfp altogether and result in below build
failure:
 | checking for compile options to get strict alignment... -mno-unaligned-access
 | checking if compiler generates unaligned accesses... no
 | checking if C symbols get an underscore after compilation... no
 | checking whether target compiler is working... no
 | configure: error: cannot compile for the target

So update the check to disable build on armv7ve/a with hardfp.

(From OE-Core rev: 3d4bb6b1ba41e83c98e821ddf86e231daec029b1)

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f67b2880fc2cfb21f51216c63b5f24d0524b4278)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Thomas Perrot
db48ca5830 xserver-xorg: move some recommended dependencies in required
Otherwise, xserver will no longer start when NO_RECOMMENDATIONS = “1”,
because dependencies in XSERVER_RRECOMMENDS are missing.

(From OE-Core rev: c017175deed298f7fb3fff9181eb4379fcc436d7)

Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit bc7bd3953f3896af0db036250cda34bc9ecbb3ac)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Vincent Davis Jr
23cf93f091 linux-firmware: package amdgpu firmware
Add packages for the firmware required by amdgpu kernel driver.

(From OE-Core rev: bb907ecbc0f513b83163db0985ae9ab3486389f4)

Signed-off-by: Vincent Davis Jr <vince@underview.tech>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 0d7aa21f120a756d1a4fc4ae0be3527b54a58247)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Christian Eggers
9921f0a250 linux-firmware: split rtl8761 firmware
Realtek Bluetooth devices require binary firmware files. Package them
separately in order to avoid installing the full linux-firmware package
on embedded devices.

Affected (end user) products (incomplete list):
- TP-Link UB500
- Logilink BT0054

(From OE-Core rev: 2772f356d4a8b8f31c34a3951814d04fb4f3decb)

Signed-off-by: Christian Eggers <ceggers@arri.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit fb44eb4feef54f2343c8186809a65dcb9b58a9b2)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Martin Jansa
cd89ca53ed vulkan-samples: add lfs=0 to SRC_URI to avoid git smudge errors in do_unpack
* we don't need other_lib/ios/Debug-iphoneos/libSDL2.a from
  https://github.com/KhronosGroup/KTX-Software.git so we can explicitly
  disable LFS here to avoid do_unpack error, bitbake will then use
  GIT_LFS_SKIP_SMUDGE=1 to override smudge setting in gitconfig,
  otherwise we would need bitbake patch to fetch LFS objects from the
  submodules as well

* do_fetch won't fetch LFS objects without explicitly requesting lfs in SRC_URI
  then do_unpack might run git smudge when enabled in .gitconfig (or /etc/gitconfig) with:

[filter "lfs"]
       smudge = git-lfs smudge -- %f
       process = git-lfs filter-process
       required = true
       clean = git-lfs clean -- %f

  and do_unpack fails as in:
  http://errors.yoctoproject.org/Errors/Details/672888/

The default /etc/gitconfig in ubuntu has this added automatically by
git-lfs postinst:

  root@ljama:~# rm /etc/gitconfig
  root@ljama:~# git lfs install --skip-repo --system
  Git LFS initialized.
  root@ljama:~# cat /etc/gitconfig
  [filter "lfs"]
        clean = git-lfs clean -- %f
        smudge = git-lfs smudge -- %f
        process = git-lfs filter-process
        required = true
  root@ljama:~# cat /var/lib/dpkg/info/git-lfs.postinst

  set -e

  # Set up /etc/gitconfig for git-lfs. The --skip-repo option prevents failure if
  # / is a Git repository with existing non-git-lfs hooks.

  git lfs install --skip-repo --system > /dev/null 2>&1

according to
https://changelogs.ubuntu.com/changelogs/pool/universe/g/git-lfs/git-lfs_3.0.2-1/changelog
it was added in:

git-lfs (2.6.0-1) unstable; urgency=medium

  * New upstream release
  * Bump standards version to 4.2.1
  * Add postinst/prerm to set up/remove git-lfs gitconfig

FWIW: vulkan-samples still fail to build with DEBUG_BUILD enabled:
http://errors.yoctoproject.org/Errors/Details/672892/

(From OE-Core rev: 58f93fcc5364880f11f1d86e0a5a6c5712f6ca6a)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit b45b1f5dba02a626b7e9040d45198bd17dce4c99)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Adrian Freihofer
290ce3525f buildconf: compare abspath
We have something like ${TOPDIR}/../../poky/meta in the bblayers.conf
file. This does not work without normalizing the path for comparison.

(From OE-Core rev: 803975aff35c9423f4bde4c0201d0f61242389e0)

Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit e0d45bcd34311ae248bac9378f46962198d148ef)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Bruce Ashfield
c3911e12f6 linux-yocto/5.19: update to v5.19.14
Updating  to the latest korg -stable release that comprises
the following commits:

    30c780ac0f9f Linux 5.19.14
    b11cc6399c56 damon/sysfs: fix possible memleak on damon_sysfs_add_target
    381eae6b1dc3 x86/alternative: Fix race in try_get_desc()
    1e624467e41f x86/cacheinfo: Add a cpu_llc_shared_mask() UP variant
    b1bad76d6a18 KVM: x86: Hide IA32_PLATFORM_DCA_CAP[31:0] from the guest
    f45380a17be5 perf tests record: Fail the test if the 'errs' counter is not zero
    77d5e98fb6f0 perf test: Fix test case 87 ("perf record tests") for hybrid systems
    b781430cd770 net: ethernet: mtk_eth_soc: fix mask of RX_DMA_GET_SPORT{,_V2}
    c81bca132fc6 net: mscc: ocelot: fix tagged VLAN refusal while under a VLAN-unaware bridge
    79a55020c989 clk: imx93: drop of_match_ptr
    539cc4ac04f8 clk: iproc: Do not rely on node name for correct PLL setup
    61560f315371 drm/i915/gt: Perf_limit_reasons are only available for Gen11+
    b1dd83f321dc clk: imx: imx6sx: remove the SET_RATE_PARENT flag for QSPI clocks
    3e8d61faead0 vdpa/mlx5: Fix MQ to support non power of two num queues
    b3b8359fafb4 virtio-blk: Fix WARN_ON_ONCE in virtio_queue_rq()
    bffdf0421ba8 vdpa/ifcvf: fix the calculation of queuepair
    9f9687bfd884 ice: xsk: drop power of 2 ring size restriction for AF_XDP
    01c2475d0c21 ice: xsk: change batched Tx descriptor cleaning
    dcf42724aacb selftests: Fix the if conditions of in test_extra_filter()
    929a2f6e93a8 net: phy: Don't WARN for PHY_UP state in mdio_bus_phy_resume()
    07eb54aa93d7 net: stmmac: power up/down serdes in stmmac_open/release
    ec1a5138428f wifi: mac80211: fix memory corruption in minstrel_ht_update_rates()
    a84813338208 wifi: mac80211: fix regression with non-QoS drivers
    3afc354e1084 wifi: cfg80211: fix MCS divisor value
    e8027e26ad58 nvme: Fix IOC_PR_CLEAR and IOC_PR_RELEASE ioctls for nvme devices
    ab3abb72bec2 net/mlxbf_gige: Fix an IS_ERR() vs NULL bug in mlxbf_gige_mdio_probe
    8b1d17a8d8ba cxgb4: fix missing unlock on ETHOFLD desc collect fail path
    3687a0c03863 net: sched: act_ct: fix possible refcount leak in tcf_ct_init()
    75b276c0537e usbnet: Fix memory leak in usbnet_disconnect()
    1a39d83193c6 perf parse-events: Remove "not supported" hybrid cache events
    44ff610a3cd4 perf print-events: Fix "perf list" can not display the PMU prefix for some hybrid cache events
    c4a07387a4b0 perf parse-events: Break out tracepoint and printing
    9ac8b5bae9f2 gpio: mvebu: Fix check for pwm support on non-A8K platforms
    314df2265c04 Input: melfas_mip4 - fix return value check in mip4_probe()
    3cd81a694233 Revert "drm: bridge: analogix/dp: add panel prepare/unprepare in suspend/resume time"
    e126ad29ec71 net: macb: Fix ZynqMP SGMII non-wakeup source resume failure
    5c94fcc0e87f drm/bridge: lt8912b: fix corrupted image output
    6fe84153067b drm/bridge: lt8912b: set hdmi or dvi mode
    8d2b780e1ed6 drm/bridge: lt8912b: add vsync hsync
    18bf2334b0b3 ASoC: tas2770: Reinit regcache on reset
    a0977f22b8a7 arm64: dts: qcom: sm8350: fix UFS PHY serdes size
    2c8028dd3f8a clk: microchip: mpfs: make the rtc's ahb clock critical
    ab5081ce9f9c clk: microchip: mpfs: fix clk_cfg array bounds violation
    8e8516fe1a64 ASoC: imx-card: Fix refcount issue with of_node_put
    1317541f0dae soc: sunxi: sram: Fix debugfs info for A64 SRAM C
    450080540800 soc: sunxi: sram: Fix probe function ordering issues
    e4768a5b0a30 soc: sunxi: sram: Prevent the driver from being unbound
    44a9633e9e16 soc: sunxi: sram: Actually claim SRAM regions
    24d6230edfc2 ARM: dts: am5748: keep usb4_tm disabled
    6f1364939969 reset: imx7: Fix the iMX8MP PCIe PHY PERST support
    38d9f71a04c2 ARM: dts: am33xx: Fix MMCHS0 dma properties
    3cf3c17fd66f media: v4l2-compat-ioctl32.c: zero buffer passed to v4l2_compat_get_array_args()
    fa20a7dcd56b media: mediatek: vcodec: Drop platform_get_resource(IORESOURCE_IRQ)
    b901652568f3 media: rkvdec: Disable H.264 error detection
    3a35e67f6b29 media: dvb_vb2: fix possible out of bound access
    e88a7c1831d4 mm,hwpoison: check mm when killing accessing process
    fcc9261c2b5f mm/hugetlb: correct demote page offset logic
    f9cedf6b357e mm: bring back update_mmu_cache() to finish_fault()
    3094c01fb1e3 mm: fix madivse_pageout mishandling on non-LRU page
    edbaf99db91b mm/migrate_device.c: copy pte dirty bit to page
    e85ab5ae17bd mm/migrate_device.c: add missing flush_cache_page()
    ca7d59a4b5f3 mm/migrate_device.c: flush TLB while holding PTL
    82a00edf23e4 mm: fix dereferencing possible ERR_PTR
    a346ba002906 mm/page_isolation: fix isolate_single_pageblock() isolation behavior
    faee7721e795 mm: prevent page_frag_alloc() from corrupting the memory
    0cddc19ddb05 mm/page_alloc: fix race condition between build_all_zonelists and page allocation
    437484d936ac mm: gup: fix the fast GUP race against THP collapse
    c6e2a0587215 mmc: hsq: Fix data stomping during mmc recovery
    1209607a7133 mmc: moxart: fix 4-bit bus width and remove 8-bit bus width
    b41808bfa049 mptcp: fix unreleased socket in accept queue
    5368d1a17ec5 mptcp: factor out __mptcp_close() without socket lock
    16220537557a mm: fix BUG splat with kvmalloc + GFP_ATOMIC
    2c5a04961201 libata: add ATA_HORKAGE_NOLPM for Pioneer BDR-207M and BDR-205
    38d854c4a11c vduse: prevent uninitialized memory accesses
    4a1230f34f06 drm/amdgpu: Add amdgpu suspend-resume code path under SRIOV
    5af714ceebae drm/i915/gt: Restrict forced preemption to the active context
    193153f7cc2a powerpc/64s/radix: don't need to broadcast IPI for radix pmd collapse flush
    a129cce68908 Revert "firmware: arm_scmi: Add clock management to the SCMI power domain"
    b48abca42e0a net: mt7531: only do PLL once after the reset
    1f4ceb7daf36 mm/damon/dbgfs: fix memory leak when using debugfs_lookup()
    decf4f5c01a8 x86/uaccess: avoid check_object_size() in copy_from_user_nmi()
    9653cc040a7d ntfs: fix BUG_ON in ntfs_lookup_inode_by_name()
    d0ebc7ef65e3 ARM: dts: integrator: Tag PCI host with device_type
    76335c4156ed frontswap: don't call ->init if no ops are registered
    26a1ca1f9fbb x86/sgx: Do not fail on incomplete sanitization on premature stop of ksgxd
    19f89548ed86 wifi: mac80211: ensure vif queues are operational after start
    d87926a7448c clk: ingenic-tcu: Properly enable registers before accessing timers
    179fd43179a1 can: c_can: don't cache TX messages for C_CAN cores
    983dd7223a9b Input: snvs_pwrkey - fix SNVS_HPVIDR1 register address
    6aac871bca33 net: usb: qmi_wwan: Add new usb-id for Dell branded EM7455
    266ee6ee24ea thunderbolt: Explicitly reset plug events delay back to USB4 spec value
    d916978b6976 usb: typec: ucsi: Remove incorrect warning
    1d54281c91d7 uas: ignore UAS for Thinkplus chips
    be014a8d8925 usb-storage: Add Hiksemi USB3-FW to IGNORE_UAS
    4a66ab5bfaea uas: add no-uas quirk for Hiksemi usb_disk
    a3ed03b3ce4d counter: 104-quad-8: Fix skipped IRQ lines during events configuration
    036eeda2212a counter: 104-quad-8: Implement and utilize register structures
    c096ac781807 counter: 104-quad-8: Utilize iomap interface
    640e0b97dfa9 perf record: Fix cpu mask bit setting for mixed mmaps
    bcd04b006c78 tools/perf: Fix out of bound access to cpu mask array
    d948e6c57793 riscv: make t-head erratas depend on MMU
    1bae99844613 Linux 5.19.13
    781e43179640 Revert "drm/i915: Extract intel_edp_fixup_vbt_bpp()"
    da42e25ec54a Revert "drm/i915/pps: Split pps_init_delays() into distinct parts"
    5f86062caf4d Revert "drm/i915/bios: Split parse_driver_features() into two parts"
    3f2631ce3c8f Revert "drm/i915/bios: Split VBT parsing to global vs. panel specific parts"
    139d38c14725 Revert "drm/i915/bios: Split VBT data into per-panel vs. global parts"
    10c7b3919e6d Revert "drm/i915/dsi: filter invalid backlight and CABC ports"
    bef6a9b54730 Revert "drm/i915/dsi: fix dual-link DSI backlight and CABC ports for display 11+"
    9182c86a0456 Revert "drm/i915/display: Fix handling of enable_psr parameter"
    58df6af8cea3 Linux 5.19.12
    547262c5b373 ext4: make directory inode spreading reflect flexbg size
    cdefe8dd61c9 ext4: fixup possible uninitialized variable access in ext4_mb_choose_next_group_cr1()
    48a12961e800 Revert "block: freeze the queue earlier in del_gendisk"
    398a0fdb38d9 ext4: use buckets for cr 1 block scan instead of rbtree
    52e8d671393c ext4: use locality group preallocation for small closed files
    405a609430a6 ext4: avoid unnecessary spreading of allocations among groups
    b82d312ff30f ext4: make mballoc try target group first even with mb_optimize_scan
    17eb9845f20f ext4: limit the number of retries after discarding preallocations blocks
    2f5e9de15e4f ext4: fix bug in extents parsing when eh_entries == 0 and eh_depth > 0
    034ef0c47e31 devdax: Fix soft-reservation memory description
    27d5563e8f5f Makefile.debug: re-enable debug info for .S files
    6ba8627f72a4 Makefile.debug: set -g unconditional on CONFIG_DEBUG_INFO_SPLIT
    c4f8b89f3ffc certs: make system keyring depend on built-in x509 parser
    c2eab6faf82b drm/amdgpu: don't register a dirty callback for non-atomic
    7f0dcbb0e557 i2c: mux: harden i2c_mux_alloc() against integer overflows
    4925e5e94ae9 i2c: mlxbf: Fix frequency calculation
    3b5ab5fbe69e i2c: mlxbf: prevent stack overflow in mlxbf_i2c_smbus_start_transaction()
    5a7547ee0d24 i2c: mlxbf: incorrect base address passed during io write
    e46e177fd8ed i2c: imx: If pm_runtime_get_sync() returned 1 device access is possible
    c9245ea442a8 workqueue: don't skip lockdep work dependency in cancel_work_sync()
    60644dffac87 fsdax: Fix infinite loop in dax_iomap_rw()
    8054beba353b pmem: fix a name collision
    c62322e62662 gpio: mt7621: Make the irqchip immutable
    2d57e46fa45b drm/rockchip: Fix return type of cdn_dp_connector_mode_valid
    4822afcff82c drm/amd/display: Mark dml30's UseMinimumDCFCLK() as noinline for stack usage
    6f14c55dc8e7 drm/amd/display: Reduce number of arguments of dml31's CalculateFlipSchedule()
    8836e42e8b00 drm/amd/display: Reduce number of arguments of dml31's CalculateWatermarksAndDRAMSpeedChangeSupport()
    88e7896936e0 drm/amd/display: Limit user regamma to a valid value
    9757b3ad4498 drm/amdgpu: Skip reset error status for psp v13_0_0
    83dfcae61be8 drm/amdgpu: add HDP remap functionality to nbio 7.7
    386ca6720b34 drm/amdgpu: change the alignment size of TMR BO to 1M
    8442bc8426d1 drm/amdgpu: use dirty framebuffer helper
    444574f828cd drm/amd/pm: disable BACO entry/exit completely on several sienna cichlid cards
    a5de08013672 gpio: ixp4xx: Make irqchip immutable
    7718cac88524 drm/gma500: Fix (vblank) IRQs not working after suspend/resume
    55c077d97fa6 drm/gma500: Fix WARN_ON(lock->magic != lock) error
    a6ed7624bf4d drm/gma500: Fix BUG: sleeping function called from invalid context errors
    9812e9ed3419 Drivers: hv: Never allocate anything besides framebuffer from framebuffer memory region
    98756ca2584e block: Do not call blk_put_queue() if gendisk allocation fails
    2f092fd2ce24 block: call blk_mq_exit_queue from disk_release for never added disks
    47f57236ba40 blk-mq: fix error handling in __blk_mq_alloc_disk
    0d0f5ca7f241 drm/i915/display: Fix handling of enable_psr parameter
    650a2e79d176 s390/dasd: fix Oops in dasd_alias_get_start_dev due to missing pavgroup
    54be62deede4 phy: marvell: phy-mvebu-a3700-comphy: Remove broken reset support
    1e9571887f97 cgroup: cgroup_get_from_id() must check the looked-up kn is a directory
    a899ba61958e serial: tegra-tcu: Use uart_xmit_advance(), fixes icount.tx accounting
    f986bfe60020 serial: tegra: Use uart_xmit_advance(), fixes icount.tx accounting
    f387ca14c73f serial: Create uart_xmit_advance()
    dc4b06e21691 serial: fsl_lpuart: Reset prior to registration
    f3f5f26c53ef io_uring: ensure that cached task references are always put on exit
    b4b3bc3f8501 selftests: forwarding: add shebang for sch_red.sh
    32afa1f23e42 bnxt: prevent skb UAF after handing over to PTP worker
    0559d91ee3a2 net: sched: fix possible refcount leak in tc_new_tfilter()
    9fc7a9f0a6e9 net: sunhme: Fix packet reception for len < RX_COPY_THRESHOLD
    2c8e8ab53acf bonding: fix NULL deref in bond_rr_gen_slave_id
    6c537124ea61 net: phy: micrel: fix shared interrupt on LAN8814
    32ac8c92919c net/smc: Stop the CLC flow if no link to map buffers on
    56c167a564b6 ice: Fix ice_xdp_xmit() when XDP TX queue number is not sufficient
    b65c53369786 drm/mediatek: dsi: Move mtk_dsi_stop() call back to mtk_dsi_poweroff()
    6acb3e83b508 perf tools: Honor namespace when synthesizing build-ids
    ee7036166b91 perf kcore_copy: Do not check /proc/modules is unchanged
    e71a088d6a97 perf jit: Include program header in ELF files
    306c17dead99 perf stat: Fix cpu map index in bperf cgroup code
    98992697b30b perf stat: Fix BPF program section name
    031b4f40487e can: gs_usb: gs_can_open(): fix race dev->can.state condition
    18979d10300e gpio: tqmx86: fix uninitialized variable girq
    16189cccd46e net: sh_eth: Fix PHY state warning splat during system resume
    199ddf9d3726 net: ravb: Fix PHY state warning splat during system resume
    235c47f437a1 netfilter: nf_ct_ftp: fix deadlock when nat rewrite is needed
    38cf372b17f0 netfilter: ebtables: fix memory leak when blob is malformed
    985b031667c3 netfilter: nf_tables: fix percpu memory leak at nf_tables_addchain()
    8bcad2a93131 netfilter: nf_tables: fix nft_counters_enabled underflow at nf_tables_addchain()
    d8d9a6995858 ice: Fix interface being down after reset with link-down-on-close flag on
    c14cdf15cde3 ice: config netdev tc before setting queues number
    dff2fa324207 net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs
    c7c9c7eb305a net/sched: taprio: avoid disabling offload when it was never enabled
    68a5def1d2c8 ipv6: Fix crash when IPv6 is administratively disabled
    23022b74b1a2 net: enetc: deny offload of tc-based TSN features on VF interfaces
    2fdebdfcd98f net: enetc: move enetc_set_psfp() out of the common enetc_set_features()
    92f7d44de3be wireguard: netlink: avoid variable-sized memcpy on sockaddr
    3b263cc13340 wireguard: ratelimiter: disable timings test by default
    a4eadca702df sfc/siena: fix null pointer dereference in efx_hard_start_xmit
    b454f12cfedd sfc/siena: fix TX channel offset when using legacy interrupts
    c9ba2948db9d net: ipa: properly limit modem routing table use
    506638752e92 of: mdio: Add of_node_put() when breaking out of for_each_xx
    68197205b3f6 drm/hisilicon: Add depends on MMU
    6201c365a0ef gve: Fix GFP flags when allocing pages
    e969486525be bnxt_en: fix flags to check for supported fw version
    b3b952168ee1 sfc: fix null pointer dereference in efx_hard_start_xmit
    5f623a77cfc2 sfc: fix TX channel offset when using legacy interrupts
    b6bea8101f97 netdevsim: Fix hwstats debugfs file permissions
    0b145d3da801 i40e: Fix set max_tx_rate when it is lower than 1 Mbps
    ab1af66d4de9 i40e: Fix VF set max MTU size
    2ffdf364b845 iavf: Fix set max MTU size with port VLAN and jumbo frames
    36da184d2196 mlxbf_gige: clear MDIO gateway lock after read
    c3f9f3089ed5 iavf: Fix bad page state
    3b27f829b7f6 um: fix default console kernel parameter
    f8c3861243be MIPS: Loongson32: Fix PHY-mode being left unspecified
    7c1f2373be0a MIPS: lantiq: export clk_get_io() for lantiq_wdt.ko
    c673c6ceac53 mm/slab_common: fix possible double free of kmem_cache
    183b87c4d18d drm/panel: simple: Fix innolux_g121i1_l01 bus_format
    88b08afb0d80 net: team: Unsync device addresses on ndo_stop
    a4761e45c86c net: bonding: Unsync device addresses on ndo_stop
    b1b48d9e60cb net: bonding: Share lacpdu_mcast_addr definition
    38aa25adcd4d scsi: mpt3sas: Fix return value check of dma_get_required_mask()
    6a4236ed47f5 scsi: qla2xxx: Fix memory leak in __qlt_24xx_handle_abts()
    16b5647f1a55 arm64: dts: imx8mp-venice-gw74xx: fix port/phy validation
    af0c754d4f60 net: phy: aquantia: wait for the suspend/resume operations to finish
    26735f395b30 ARM: dts: lan966x: Fix the interrupt number for internal PHYs
    d5241ea15778 arm64: dts: imx8mp-venice-gw74xx: fix ksz9477 cpu port
    f675f5955ab8 arm64: dts: imx8mp-venice-gw74xx: fix CAN STBY polarity
    392bd6ce1ba9 drm/mediatek: Fix wrong dither settings
    fc8454d54478 arm64: dts: tqma8mqml: Include phy-imx8-pcie.h header
    31ce3c688ddc wifi: iwlwifi: Mark IWLMEI as broken
    9fe1e2da965a net: core: fix flow symmetric hash
    b583e6b25bf9 ipvlan: Fix out-of-bound bugs caused by unset skb->mac_header
    0ad4e4f4d1c4 iavf: Fix cached head and tail value for iavf_get_tx_pending
    7c945e5b4787 ice: Fix crash by keep old cfg when update TCs more than queues
    149979e87eb7 ice: Don't double unplug aux on peer initiated reset
    633c81c04496 netfilter: nfnetlink_osf: fix possible bogus match in nf_osf_find()
    510ea9eae5ee netfilter: nf_conntrack_irc: Tighten matching on DCC message
    f28e376e4c1e netfilter: nf_conntrack_sip: fix ct_sip_walk_headers
    5f394e885eaf arm64: dts: imx8mm-verdin: extend pmic voltages
    3e39beb4efa5 arm64: dts: rockchip: Remove 'enable-active-low' from rk3566-quartz64-a
    efd3a3e464c6 arm64: dts: rockchip: Remove 'enable-active-low' from rk3399-puma
    9350ed92dfe0 arm64: dts: rockchip: fix property for usb2 phy supply on rk3568-evb1-v10
    5e6d95bd6c9d arm64: dts: rockchip: fix property for usb2 phy supply on rock-3a
    a17df55bf6d5 dmaengine: ti: k3-udma-private: Fix refcount leak bug in of_xudma_dev_get()
    869c94dfd900 arm64: dts: imx8ulp: add #reset-cells for pcc
    f478a456a30d arm64: dts: imx8mn: remove GPU power domain reset
    124c330f4071 arm64: dts: rockchip: Set RK3399-Gru PCLK_EDP to 24 MHz
    9182be042c3e arm64: dts: imx8mm: Reverse CPLD_Dn GPIO label mapping on MX8Menlo
    164f2c710a78 drm/mediatek: dsi: Add atomic {destroy,duplicate}_state, reset callbacks
    87d4bdeacff8 arm64: dts: rockchip: Fix typo in lisense text for PX30.Core
    8a906e3a18bb arm64: dts: rockchip: Pull up wlan wake# on Gru-Bob
    6b8c338e1b88 arm64: dts: rockchip: Lower sd speed on quartz64-b
    daacedde25f0 firmware: arm_scmi: Fix the asynchronous reset requests
    8e65edf0d376 firmware: arm_scmi: Harden accesses to the reset domains
    e31fa6648542 batman-adv: Fix hang up with small MTU hard-interface
    117737acc4b3 vmlinux.lds.h: CFI: Reduce alignment of jump-table to function alignment
    bb6d99e27cbe arm64: topology: fix possible overflow in amu_fie_setup()
    42c7fc41020c perf/arm-cmn: Add more bits to child node address offset field
    7a764b44d346 KVM: x86: Inject #UD on emulated XSETBV if XSAVES isn't enabled
    eec722138aee KVM: x86: Always enable legacy FP/SSE in allowed user XFEATURES
    c5f118361297 KVM: x86: Reinstate kvm_vcpu_arch.guest_supported_xcr0
    df6cb39335cf mm: slub: fix flush_cpu_slab()/__free_slab() invocations in task context.
    02bcd951aa3c mm/slub: fix to return errno if kmalloc() fails
    cbaddace599e net: mana: Add rmb after checking owner bits
    7221020d79cc can: flexcan: flexcan_mailbox_read() fix return value for drop = true
    b6c2ad616dd4 kasan: call kasan_malloc() from __kmalloc_*track_caller()
    dc8864f4fd01 xen/xenbus: fix xenbus_setup_ring()
    f799e0568d6c drm/i915/gem: Really move i915_gem_context.link under ref protection
    92881e068ee1 drm/i915/gem: Flush contexts on driver release
    08ac12569010 riscv: fix RISCV_ISA_SVPBMT kconfig dependency warning
    558003a84a3c riscv: fix a nasty sigreturn bug...
    b1489043d3b9 gpiolib: cdev: Set lineevent_state::irq after IRQ register successfully
    41f857033c44 gpio: mockup: Fix potential resource leakage when register a chip
    af0bfabf06c7 gpio: mockup: fix NULL pointer dereference when removing debugfs
    74ce6f1e0f3b wifi: mt76: fix reading current per-tid starting sequence number for aggregation
    1dd2a948a178 efi: libstub: check Shim mode using MokSBStateRT
    96dc4e2c5283 efi: x86: Wipe setup_data on pure EFI boot
    7a27a04f4ef6 thunderbolt: Add support for Intel Maple Ridge single port controller
    d6f28143bccb usb: dwc3: core: leave default DMA if the controller does not support 64-bit DMA
    af830c831d40 media: flexcop-usb: fix endpoint type check
    53b48f0672d5 libperf evlist: Fix polling of system-wide events
    eecada16bcc4 btrfs: zoned: wait for extent buffer IOs before finishing a zone
    c338bea1fec5 btrfs: fix hang during unmount when stopping a space reclaim worker
    cf7769a47e65 btrfs: fix hang during unmount when stopping block group reclaim worker
    17244f71765d exfat: fix overflow for large capacity partition
    2e238bba8a7e iommu/vt-d: Check correct capability for sagaw determination
    ecec349af8c7 ALSA: hda/realtek: Add a quirk for HP OMEN 16 (8902) mute LED
    28e07bb27ba4 ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5530 laptop
    1f65164bc605 ALSA: hda/realtek: Add quirk for ASUS GA503R laptop
    0632fb7f2158 ALSA: hda/realtek: Add pincfg for ASUS G533Z HP jack
    76b75705c941 ALSA: hda/realtek: Add pincfg for ASUS G513 HP jack
    2035227cd000 ALSA: hda/realtek: Re-arrange quirk table entries
    3637770602ac ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5570 laptop
    73c4ae35ff11 ALSA: hda/realtek: Add quirk for Huawei WRT-WX9
    61c19a35f0d2 ALSA: hda: add Intel 5 Series / 3400 PCI DID
    d6cb6e424a60 ALSA: hda: Fix Nvidia dp infoframe
    6e91ec54e7f1 ALSA: hda: Fix hang at HD-audio codec unbinding due to refcount saturation
    abb050dabd7d ALSA: hda/tegra: set depop delay for tegra
    1c5a0a1f4d15 ALSA: core: Fix double-free at snd_card_new()
    e0e17c7bbdf4 Revert "ALSA: usb-audio: Split endpoint setups for hw_params and prepare"
    d744140498a3 USB: serial: option: add Quectel RM520N
    3db2ec3a6724 USB: serial: option: add Quectel BG95 0x0203 composition
    e82a8ff62709 USB: core: Fix RST error in hub.c
    fd0b4fd54892 drivers/base: Fix unsigned comparison to -1 in CPUMAP_FILE_MAX_BYTES
    2e7eb4c1e8af scsi: core: Fix a use-after-free
    d27b66257db1 block: simplify disk shutdown
    fdb28e968815 block: stop setting the nomerges flags in blk_cleanup_queue
    ab85cb5297f7 block: remove QUEUE_FLAG_DEAD
    633e819de9fa xfrm: fix XFRMA_LASTUSED comment
    2776911d4a98 Revert "usb: gadget: udc-xilinx: replace memcpy with memcpy_toio"
    8039621a78e5 Revert "usb: add quirks for Lenovo OneLink+ Dock"
    7c64dd4dbf90 smb3: use filemap_write_and_wait_range instead of filemap_write_and_wait
    c7ae5c403d68 usb: gadget: udc-xilinx: replace memcpy with memcpy_toio
    9b56515aeeff usb: add quirks for Lenovo OneLink+ Dock
    0cdde8460c30 smb3: fix temporary data corruption in insert range
    49523a473220 smb3: fix temporary data corruption in collapse range
    cc914c37e55f smb3: Move the flush out of smb2_copychunk_range() into its callers
    f6bb739e61eb drm/i915/dsi: fix dual-link DSI backlight and CABC ports for display 11+
    d9d2625dafe2 drm/i915/dsi: filter invalid backlight and CABC ports
    fc6aff984b1c drm/i915/bios: Split VBT data into per-panel vs. global parts
    2af21ae876cf drm/i915/bios: Split VBT parsing to global vs. panel specific parts
    5da3f1bfb88e drm/i915/bios: Split parse_driver_features() into two parts
    ad719d5cc7cb drm/i915/pps: Split pps_init_delays() into distinct parts
    a0f7cdd69ca3 drm/i915: Extract intel_edp_fixup_vbt_bpp()
    fcf22aefe871 Linux 5.19.11
    4d8637f1d672 Revert "iommu/vt-d: Fix possible recursive locking in intel_iommu_init()"
    36371c3adb7a ALSA: hda/sigmatel: Fix unused variable warning for beep power change
    ddd2edc276e0 ALSA: hda/sigmatel: Keep power up while beep is enabled
    99bc25748e39 cgroup: Add missing cpus_read_lock() to cgroup_attach_task_all()
    7051efc07d72 dt-bindings: apple,aic: Fix required item "apple,fiq-index" in affinity description
    20b3f49e9498 net: Find dst with sk's xfrm policy not ctl_sk
    e68db1a89fc9 drm/amdgpu: move nbio sdma_doorbell_range() into sdma code for vega
    9189056c223b drm/amdgpu: move nbio ih_doorbell_range() into ih code for vega
    989d23d88520 drm/amdgpu: Don't enable LTR if not supported
    e6189420e34f drm/amdgpu: make sure to init common IP before gmc
    dd52bde6767e drm/i915: Set correct domains values at _i915_vma_move_to_active
    871b9d5c68d8 drm/i915/gt: Fix perf limit reasons bit positions
    b31c81d633d8 tools/include/uapi: Fix <asm/errno.h> for parisc and xtensa
    ac12a96d1d35 parisc: Allow CONFIG_64BIT with ARCH=parisc
    46c716a31fcd blk-lib: fix blkdev_issue_secure_erase
    c2c7f67fd12d cifs: always initialize struct msghdr smb_msg completely
    eea8626615a0 cifs: don't send down the destination address to sendmsg for a SOCK_STREAM
    2c3f439480c0 cifs: revalidate mapping when doing direct writes
    d50c30b66f04 io_uring/msg_ring: check file type before putting
    6f5ceeb59d09 of/device: Fix up of_dma_configure_id() stub
    6ebcd3a8f5d2 parisc: ccio-dma: Add missing iounmap in error path in ccio_probe()
    248c48ced209 block: blk_queue_enter() / __bio_queue_enter() must return -EAGAIN for nowait
    d31efde8d45d drm/i915/guc: Cancel GuC engine busyness worker synchronously
    6731a2193bc8 drm/i915/guc: Don't update engine busyness stats too frequently
    b0dc9560acd2 drm/i915/vdsc: Set VDSC PIC_HEIGHT before using for DP DSC
    fc689a286139 drm/rockchip: vop2: Fix eDP/HDMI sync polarities
    ca52cf493f97 drm/meson: Fix OSD1 RGB to YCbCr coefficient
    e681b2df3ad4 drm/meson: Correct OSD1 global alpha value
    99ed392209cc drm/panel-edp: Fix delays for Innolux N116BCA-EA1
    c60087415670 Revert "SUNRPC: Remove unreachable error condition"
    4d9f296e78b0 NFSv4.2: Update mode bits after ALLOCATE and DEALLOCATE
    2f0a154b16ab gpio: mpc8xxx: Fix support for IRQ_TYPE_LEVEL_LOW flow_type in mpc85xx
    51e024dcaf08 NFSv4: Turn off open-by-filehandle and NFS re-export for NFSv4.0
    dce19409fb74 SUNRPC: Fix call completion races with call_decode()
    fe0a6a2369d8 pinctrl: sunxi: Fix name for A100 R_PIO
    4b1366bf4ed1 pinctrl: rockchip: Enhance support for IRQ_TYPE_EDGE_BOTH
    8e33176cd475 pinctrl: qcom: sc8180x: Fix wrong pin numbers
    50207584d3f5 pinctrl: qcom: sc8180x: Fix gpio_wakeirq_map
    2133f4513116 of: fdt: fix off-by-one error in unflatten_dt_nodes()
    b80678c1e00a Linux 5.19.10
    0541ab4d0330 Input: goodix - add compatible string for GT1158
    693ccecee083 RDMA/irdma: Use s/g array in post send only when its valid
    1989b17301f8 gpio: 104-idio-16: Make irq_chip immutable
    b240650a6600 gpio: 104-dio-48e: Make irq_chip immutable
    e18b2e3310f0 LoongArch: Fix arch_remove_memory() undefined build error
    6023efd94e54 LoongArch: Fix section mismatch due to acpi_os_ioremap()
    0b38a5072464 platform/x86: asus-wmi: Increase FAN_CURVE_BUF_LEN to 32
    fe5872fd1684 usb: storage: Add ASUS <0x0b05:0x1932> to IGNORE_UAS
    2fdf0a1ff474 platform/x86: acer-wmi: Acer Aspire One AOD270/Packard Bell Dot keymap fixes
    719b2021d778 perf/arm_pmu_platform: fix tests for platform_get_irq() failure
    3d513ebf8c3b net: dsa: hellcreek: Print warning only once
    c624b5659a28 drm/amd/amdgpu: skip ucode loading if ucode_size == 0
    f566cb9f4057 nvmet-tcp: fix unhandled tcp states in nvmet_tcp_state_change()
    e8d5aa9c67ed nvme-pci: add NVME_QUIRK_BOGUS_NID for Lexar NM610
    137f1493f151 drm/amd/pm: use vbios carried pptable for all SMU13.0.7 SKUs
    2052738ece42 drm/amdgpu: disable FRU access on special SIENNA CICHLID card
    12c20186d84e Input: iforce - add support for Boeder Force Feedback Wheel
    47e83e6ebf99 ieee802154: cc2520: add rc code in cc2520_tx()
    bc55c1677edb gpio: mockup: remove gpio debugfs when remove device
    35c0b78d0d42 r8152: add PID for the Lenovo OneLink+ Dock
    84d8959393a0 tg3: Disable tg3 device on system reboot to avoid triggering AER
    6b1bcd579fc5 Bluetooth: MGMT: Fix Get Device Flags
    fbb701e51ee2 hid: intel-ish-hid: ishtp: Fix ishtp client sending disordered message
    37c3dcfc4730 HID: ishtp-hid-clientHID: ishtp-hid-client: Fix comment typo
    65d983566887 dt-bindings: iio: gyroscope: bosch,bmg160: correct number of pins
    50a1ffa557cf kvm: x86: mmu: Always flush TLBs when enabling dirty logging
    c87f1f99e26e peci: cpu: Fix use-after-free in adev_release()
    f25a547e7c76 drm/msm/rd: Fix FIFO-full deadlock
    df01ac6582e1 platform/surface: aggregator_registry: Add support for Surface Laptop Go 2
    f05939158a41 Input: goodix - add support for GT1158
    37c81d9f1d1b ACPI: resource: skip IRQ override on AMD Zen platforms
    f26649e59b4f RDMA/mlx5: Fix UMR cleanup on error flow of driver init
    d8f7bff9a426 RDMA/mlx5: Add a umr recovery flow
    ada0ccc4a137 RDMA/mlx5: Rely on RoCE fw cap instead of devlink when setting profile
    ddc58af02675 net/mlx5: Use software VHCA id when it's supported
    630a75548b88 net/mlx5: Introduce ifc bits for using software vhca id
    3bd8fdde3826 iommu/vt-d: Fix kdump kernels boot failure with scalable mode

(From OE-Core rev: 4814d5d8e7ff674ca812048c54f2f3e74ba35000)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 396b40b0b1e52fc12c0e171734fba190edfaf671)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:14 +00:00
Bruce Ashfield
ad8bd886a4 linux-yocto/5.15: update to v5.15.72
Updating  to the latest korg -stable release that comprises
the following commits:

    c68173b2012b Linux 5.15.72
    713fa3e4591f drm/i915/gem: Really move i915_gem_context.link under ref protection
    a00ed4e5d5ee x86/alternative: Fix race in try_get_desc()
    c3d4b8970c0d KVM: x86: Hide IA32_PLATFORM_DCA_CAP[31:0] from the guest
    ab5c5787ab5e clk: iproc: Do not rely on node name for correct PLL setup
    e748a084b51c clk: imx: imx6sx: remove the SET_RATE_PARENT flag for QSPI clocks
    19f4e1636626 fs: split off setxattr_copy and do_setxattr function from setxattr
    a0e3719e030a vdpa/ifcvf: fix the calculation of queuepair
    4755d9d2c9b0 selftests: Fix the if conditions of in test_extra_filter()
    c83a7606aa65 net: phy: Don't WARN for PHY_UP state in mdio_bus_phy_resume()
    a8cd7e1bc7cd net: stmmac: power up/down serdes in stmmac_open/release
    67c00bcf4231 wifi: mac80211: fix regression with non-QoS drivers
    520e434a082d nvme: Fix IOC_PR_CLEAR and IOC_PR_RELEASE ioctls for nvme devices
    e9d7d809022e net/mlxbf_gige: Fix an IS_ERR() vs NULL bug in mlxbf_gige_mdio_probe
    8b1b908507ce cxgb4: fix missing unlock on ETHOFLD desc collect fail path
    e99c7a61d89e net: sched: act_ct: fix possible refcount leak in tcf_ct_init()
    815381aeff95 usbnet: Fix memory leak in usbnet_disconnect()
    af91321b7372 gpio: mvebu: Fix check for pwm support on non-A8K platforms
    f592ccddac68 Input: melfas_mip4 - fix return value check in mip4_probe()
    ff982b1f325d Revert "drm: bridge: analogix/dp: add panel prepare/unprepare in suspend/resume time"
    bde7795794f4 drm/bridge: lt8912b: fix corrupted image output
    e103b0e83991 drm/bridge: lt8912b: set hdmi or dvi mode
    473f653a86ee drm/bridge: lt8912b: add vsync hsync
    6a12105d9d4f ASoC: tas2770: Reinit regcache on reset
    75ef73d7d2b3 arm64: dts: qcom: sm8350: fix UFS PHY serdes size
    5664dc84fc2e ASoC: imx-card: Fix refcount issue with of_node_put
    367403bc1cfe soc: sunxi: sram: Fix debugfs info for A64 SRAM C
    68d2f42cf4f6 soc: sunxi: sram: Fix probe function ordering issues
    2f82b5290078 soc: sunxi_sram: Make use of the helper function devm_platform_ioremap_resource()
    861adc2b2037 soc: sunxi: sram: Prevent the driver from being unbound
    8b07378ebe43 soc: sunxi: sram: Actually claim SRAM regions
    d50e0e2f3d94 ARM: dts: am5748: keep usb4_tm disabled
    c48e3db1df25 reset: imx7: Fix the iMX8MP PCIe PHY PERST support
    606229101290 ARM: dts: am33xx: Fix MMCHS0 dma properties
    bfe5dc2101ba swiotlb: max mapping size takes min align mask into account
    a6a3b6b11ac0 media: v4l2-compat-ioctl32.c: zero buffer passed to v4l2_compat_get_array_args()
    ab9d32844742 media: rkvdec: Disable H.264 error detection
    69379139ed78 media: dvb_vb2: fix possible out of bound access
    6287c9e00595 mm,hwpoison: check mm when killing accessing process
    f9aed3d8a029 mm: fix madivse_pageout mishandling on non-LRU page
    1299c1198878 mm/migrate_device.c: flush TLB while holding PTL
    e858f7ac7395 mm: fix dereferencing possible ERR_PTR
    d75ce115625e mm: prevent page_frag_alloc() from corrupting the memory
    23d17e2b04c7 mm/page_alloc: fix race condition between build_all_zonelists and page allocation
    fec2db7a434a mmc: hsq: Fix data stomping during mmc recovery
    4fef6e1fe07c mmc: moxart: fix 4-bit bus width and remove 8-bit bus width
    4f75d0cacd65 libata: add ATA_HORKAGE_NOLPM for Pioneer BDR-207M and BDR-205
    dc248ddf41ea vduse: prevent uninitialized memory accesses
    ea774829699a drm/amdgpu: Add amdgpu suspend-resume code path under SRIOV
    25759a7bc1f4 drm/i915/gt: Restrict forced preemption to the active context
    e0f576335d05 Revert "firmware: arm_scmi: Add clock management to the SCMI power domain"
    5de02ab84aec net: mt7531: only do PLL once after the reset
    56e3f8d56299 mm/damon/dbgfs: fix memory leak when using debugfs_lookup()
    149da9e60b8c ntfs: fix BUG_ON in ntfs_lookup_inode_by_name()
    dc8cdb988453 ARM: dts: integrator: Tag PCI host with device_type
    aa5c3aa3f197 x86/sgx: Do not fail on incomplete sanitization on premature stop of ksgxd
    476c188b9dbe clk: ingenic-tcu: Properly enable registers before accessing timers
    d134b0f7a9b9 can: c_can: don't cache TX messages for C_CAN cores
    6fff203793cb Input: snvs_pwrkey - fix SNVS_HPVIDR1 register address
    006a5085a3a8 net: usb: qmi_wwan: Add new usb-id for Dell branded EM7455
    81e759d71a6b thunderbolt: Explicitly reset plug events delay back to USB4 spec value
    85a70a259916 usb: typec: ucsi: Remove incorrect warning
    ac12a04c8e08 uas: ignore UAS for Thinkplus chips
    528aba78ee01 usb-storage: Add Hiksemi USB3-FW to IGNORE_UAS
    0a4e8f384e82 uas: add no-uas quirk for Hiksemi usb_disk
    8484a356cee8 cgroup: cgroup_get_from_id() must check the looked-up kn is a directory
    ae04dd5ef180 cgroup: reduce dependency on cgroup_mutex
    7a64e6dc6cb7 ALSA: hda/realtek: fix speakers and micmute on HP 855 G8
    6a3bee2ead9b ALSA: hda: Fix Nvidia dp infoframe
    f7392f93a2fb ALSA: hda: Fix hang at HD-audio codec unbinding due to refcount saturation
    de5deddfa7e7 ALSA: hda: Do disconnect jacks at codec unbind
    90c7e9b400c7 Linux 5.15.71
    214194610a18 ext4: use locality group preallocation for small closed files
    8a1ac4167dda ext4: avoid unnecessary spreading of allocations among groups
    fd8b82919549 ext4: make mballoc try target group first even with mb_optimize_scan
    21dada4ce19c ext4: limit the number of retries after discarding preallocations blocks
    be4df018c0be ext4: fix bug in extents parsing when eh_entries == 0 and eh_depth > 0
    90bc7b630c6c ext4: make directory inode spreading reflect flexbg size
    95d714d8ad3d devdax: Fix soft-reservation memory description
    27bf7a5d1198 NFSv4: Fixes for nfs4_inode_return_delegation()
    21b0301f2234 drm/amdgpu: don't register a dirty callback for non-atomic
    6eb08245da51 i2c: mlxbf: Fix frequency calculation
    dc2a0c587006 i2c: mlxbf: prevent stack overflow in mlxbf_i2c_smbus_start_transaction()
    621c6ab03ac3 i2c: mlxbf: incorrect base address passed during io write
    c242dbf2e36f i2c: imx: If pm_runtime_get_sync() returned 1 device access is possible
    c71ec39be45a workqueue: don't skip lockdep work dependency in cancel_work_sync()
    929ef155e1da fsdax: Fix infinite loop in dax_iomap_rw()
    9aac3819f099 drm/rockchip: Fix return type of cdn_dp_connector_mode_valid
    1c26968caf18 drm/amd/display: Mark dml30's UseMinimumDCFCLK() as noinline for stack usage
    492db4ffcff3 drm/amd/display: Reduce number of arguments of dml31's CalculateFlipSchedule()
    9539cfc74493 drm/amd/display: Reduce number of arguments of dml31's CalculateWatermarksAndDRAMSpeedChangeSupport()
    a541c0111818 drm/amd/display: Limit user regamma to a valid value
    33b128f790b6 drm/amdgpu: use dirty framebuffer helper
    f76d6f309a68 drm/amd/pm: disable BACO entry/exit completely on several sienna cichlid cards
    e5ae504c8623 drm/gma500: Fix BUG: sleeping function called from invalid context errors
    e07d9154bb81 Drivers: hv: Never allocate anything besides framebuffer from framebuffer memory region
    5f270b61ee8b drm/amd/amdgpu: fixing read wrong pf2vf data in SRIOV
    d3a67c21b18f s390/dasd: fix Oops in dasd_alias_get_start_dev due to missing pavgroup
    faf0e1b5d82b serial: tegra-tcu: Use uart_xmit_advance(), fixes icount.tx accounting
    0aada772fd16 serial: tegra: Use uart_xmit_advance(), fixes icount.tx accounting
    4c7e17270cab serial: Create uart_xmit_advance()
    4199425b1132 serial: fsl_lpuart: Reset prior to registration
    cc1504f6da2e KVM: x86/mmu: Fold rmap_recycle into rmap_add
    dddae48eabfb selftests: forwarding: add shebang for sch_red.sh
    08483e4c0c83 bnxt: prevent skb UAF after handing over to PTP worker
    f8162aed962b net: sched: fix possible refcount leak in tc_new_tfilter()
    bd29ca2b398c net: sunhme: Fix packet reception for len < RX_COPY_THRESHOLD
    ec3a6f4ffe55 bonding: fix NULL deref in bond_rr_gen_slave_id
    db145b8a04fc net/smc: Stop the CLC flow if no link to map buffers on
    5daef0042d2c drm/mediatek: dsi: Move mtk_dsi_stop() call back to mtk_dsi_poweroff()
    a08cba2f50d7 perf tools: Honor namespace when synthesizing build-ids
    1a83f39dc4e1 perf kcore_copy: Do not check /proc/modules is unchanged
    a3b923f449a3 perf jit: Include program header in ELF files
    39dc6ccdd5af perf stat: Fix BPF program section name
    c6d939639fe0 can: gs_usb: gs_can_open(): fix race dev->can.state condition
    e1676adedc17 net: sh_eth: Fix PHY state warning splat during system resume
    71200518bbbf net: ravb: Fix PHY state warning splat during system resume
    d5917b7af7ca netfilter: ebtables: fix memory leak when blob is malformed
    08d7524f366a netfilter: nf_tables: fix percpu memory leak at nf_tables_addchain()
    91aa52652f4b netfilter: nf_tables: fix nft_counters_enabled underflow at nf_tables_addchain()
    c721623efd09 net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs
    f58e43184226 net/sched: taprio: avoid disabling offload when it was never enabled
    510e703e4ed0 net: enetc: deny offload of tc-based TSN features on VF interfaces
    11eb9ed08856 net: enetc: move enetc_set_psfp() out of the common enetc_set_features()
    c60801e4e2b5 wireguard: netlink: avoid variable-sized memcpy on sockaddr
    3ebf690d1cde wireguard: ratelimiter: disable timings test by default
    c2dc533a7edb net: ipa: properly limit modem routing table use
    cbdab7d68f20 of: mdio: Add of_node_put() when breaking out of for_each_xx
    ca86577c10bc drm/hisilicon: Add depends on MMU
    68c4acee6328 drm/hisilicon/hibmc: Allow to be built if COMPILE_TEST is enabled
    8547c7bfc061 sfc: fix null pointer dereference in efx_hard_start_xmit
    360910b88d14 sfc: fix TX channel offset when using legacy interrupts
    bc750d7127a9 i40e: Fix set max_tx_rate when it is lower than 1 Mbps
    53220b99059a i40e: Fix VF set max MTU size
    7249a653fe5f iavf: Fix set max MTU size with port VLAN and jumbo frames
    030e0688b6b2 mlxbf_gige: clear MDIO gateway lock after read
    93859f6878e7 iavf: Fix bad page state
    e1dbe8a62098 um: fix default console kernel parameter
    7400e2edfc9e MIPS: Loongson32: Fix PHY-mode being left unspecified
    abea65fa7713 MIPS: lantiq: export clk_get_io() for lantiq_wdt.ko
    831cf63c043e drm/panel: simple: Fix innolux_g121i1_l01 bus_format
    408d5752b60f net: team: Unsync device addresses on ndo_stop
    f50265a4f3da net: bonding: Unsync device addresses on ndo_stop
    e6b277f7367e net: bonding: Share lacpdu_mcast_addr definition
    8b2ab46b6c63 scsi: mpt3sas: Fix return value check of dma_get_required_mask()
    89df49e561b4 scsi: qla2xxx: Fix memory leak in __qlt_24xx_handle_abts()
    5826a555f77c net: phy: aquantia: wait for the suspend/resume operations to finish
    4d2f1bc9067a net: core: fix flow symmetric hash
    8d06006c7eb7 ipvlan: Fix out-of-bound bugs caused by unset skb->mac_header
    dae9d2abe25b iavf: Fix cached head and tail value for iavf_get_tx_pending
    34447d64b8d2 ice: Don't double unplug aux on peer initiated reset
    816eab147e5c netfilter: nfnetlink_osf: fix possible bogus match in nf_osf_find()
    dc33ffbc361e netfilter: nf_conntrack_irc: Tighten matching on DCC message
    0606c5d5fefd netfilter: nf_conntrack_sip: fix ct_sip_walk_headers
    0babb5bc85ee arm64: dts: rockchip: Remove 'enable-active-low' from rk3399-puma
    dd5a6c5a0875 dmaengine: ti: k3-udma-private: Fix refcount leak bug in of_xudma_dev_get()
    1b0e46d970b4 arm64: dts: rockchip: Set RK3399-Gru PCLK_EDP to 24 MHz
    e352fea1d0fc drm/mediatek: dsi: Add atomic {destroy,duplicate}_state, reset callbacks
    43733b6c9fda arm64: dts: rockchip: Fix typo in lisense text for PX30.Core
    2929463a9eff arm64: dts: rockchip: Pull up wlan wake# on Gru-Bob
    166a332463b5 firmware: arm_scmi: Fix the asynchronous reset requests
    1f08a1b26cfc firmware: arm_scmi: Harden accesses to the reset domains
    9ec5a534d77c xfs: validate inode fork size against fork format
    5caa3a127953 xfs: fix xfs_ifree() error handling to not leak perag ref
    9e7b231687fd xfs: reorder iunlink remove operation in xfs_ifree
    28c7ef86b21b vmlinux.lds.h: CFI: Reduce alignment of jump-table to function alignment
    3c3edb82d67b arm64: topology: fix possible overflow in amu_fie_setup()
    2427a04bce86 KVM: x86: Inject #UD on emulated XSETBV if XSAVES isn't enabled
    61703b248be9 mm: slub: fix flush_cpu_slab()/__free_slab() invocations in task context.
    2d6e55e0c038 mm/slub: fix to return errno if kmalloc() fails
    71075d7d4632 net: mana: Add rmb after checking owner bits
    19aea370fd09 can: flexcan: flexcan_mailbox_read() fix return value for drop = true
    bf0197aea195 kasan: call kasan_malloc() from __kmalloc_*track_caller()
    c75288a4902b riscv: fix a nasty sigreturn bug...
    97da736cd11a gpiolib: cdev: Set lineevent_state::irq after IRQ register successfully
    9b26723e058f gpio: mockup: Fix potential resource leakage when register a chip
    18352095a0d5 gpio: mockup: fix NULL pointer dereference when removing debugfs
    2279e977405b wifi: mt76: fix reading current per-tid starting sequence number for aggregation
    b5bc5a274d54 efi: libstub: check Shim mode using MokSBStateRT
    ef43fee9f211 efi: x86: Wipe setup_data on pure EFI boot
    b173f1f8ef9e thunderbolt: Add support for Intel Maple Ridge single port controller
    65b13f951fe6 usb: dwc3: core: leave default DMA if the controller does not support 64-bit DMA
    7143f6cf58db media: flexcop-usb: fix endpoint type check
    d8a76a2e514f btrfs: fix hang during unmount when stopping a space reclaim worker
    46053262b5f5 btrfs: fix hang during unmount when stopping block group reclaim worker
    b02f86689a5a iommu/vt-d: Check correct capability for sagaw determination
    a963fe6d0eb6 ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5530 laptop
    4b2fa20da623 ALSA: hda/realtek: Add quirk for ASUS GA503R laptop
    eb54e457c4ad ALSA: hda/realtek: Add pincfg for ASUS G533Z HP jack
    0898469913cd ALSA: hda/realtek: Add pincfg for ASUS G513 HP jack
    c6a746b4fca5 ALSA: hda/realtek: Re-arrange quirk table entries
    41e974cd6ecb ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5570 laptop
    5421125bbda8 ALSA: hda/realtek: Add quirk for Huawei WRT-WX9
    84481d7a59a2 ALSA: hda: add Intel 5 Series / 3400 PCI DID
    04b5bd5702ab ALSA: hda/tegra: set depop delay for tegra
    e10425c5424b ALSA: core: Fix double-free at snd_card_new()
    10a8c5d7d393 Revert "ALSA: usb-audio: Split endpoint setups for hw_params and prepare"
    06c0204a6e80 USB: serial: option: add Quectel RM520N
    6cf9e8b7e67a USB: serial: option: add Quectel BG95 0x0203 composition
    369b008bbe36 USB: core: Fix RST error in hub.c
    d10d1e9d9f1e drivers/base: Fix unsigned comparison to -1 in CPUMAP_FILE_MAX_BYTES
    6eede01dfd0e Revert "usb: gadget: udc-xilinx: replace memcpy with memcpy_toio"
    c02431f43e12 Revert "usb: add quirks for Lenovo OneLink+ Dock"
    8de5e12f587b usb: gadget: udc-xilinx: replace memcpy with memcpy_toio
    2db7a7176c45 usb: add quirks for Lenovo OneLink+ Dock
    a72eee6d905e usb: dwc3: gadget: Avoid duplicate requests to enable Run/Stop
    f79a57d4091f usb: dwc3: gadget: Don't modify GEVNTCOUNT in pullup()
    1a9923999459 usb: dwc3: gadget: Refactor pullup()
    7604a210acbb usb: dwc3: gadget: Prevent repeat pullup()
    a0b5d22b0448 usb: dwc3: Issue core soft reset before enabling run/stop
    8d583ba79cde usb: dwc3: gadget: Avoid starting DWC3 gadget during UDC unbind
    167b18f25b96 staging: r8188eu: Add Rosewill USB-N150 Nano to device tables
    add40eda8258 staging: r8188eu: Remove support for devices with 8188FU chipset (0bda:f179)
    55653c548612 drm/amdgpu: make sure to init common IP before gmc
    25a90a11036b drm/amdgpu: Separate vf2pf work item init from virt data exchange
    3e98e33d345e Linux 5.15.70
    21f948cab866 ALSA: hda/sigmatel: Fix unused variable warning for beep power change
    5db17805b6ba cgroup: Add missing cpus_read_lock() to cgroup_attach_task_all()
    39b0235284c7 KVM: SEV: add cache flush to solve SEV cache incoherency issues
    d9bf46e74735 net: Find dst with sk's xfrm policy not ctl_sk
    ab5140c6ddd7 video: fbdev: pxa3xx-gcu: Fix integer overflow in pxa3xx_gcu_write
    9af7af862cb8 mksysmap: Fix the mismatch of 'L0' symbols in System.map
    2340f23c770d drm/panfrost: devfreq: set opp to the recommended one to configure regulator
    7e8df4920b2a MIPS: OCTEON: irq: Fix octeon_irq_force_ciu_mapping()
    af88da4c737a afs: Return -EAGAIN, not -EREMOTEIO, when a file already locked
    2dd0ae85fb3c net: usb: qmi_wwan: add Quectel RM520N
    a5e949e088bc ALSA: hda/tegra: Align BDL entry to 4KB boundary
    3d25aaf71fe0 ALSA: hda/sigmatel: Keep power up while beep is enabled
    d582756bfc71 wifi: mac80211_hwsim: check length for virtio packets
    17898c3b578a rxrpc: Fix calc of resend age
    1bbcd88c3c99 rxrpc: Fix local destruction being repeated
    87cd4c02bdb1 scsi: lpfc: Return DID_TRANSPORT_DISRUPTED instead of DID_REQUEUE
    f08a320b4b60 regulator: pfuze100: Fix the global-out-of-bounds access in pfuze100_regulator_probe()
    80c7be217ba7 ASoC: nau8824: Fix semaphore unbalance at error paths
    f1d57c4c99c2 arm64: dts: juno: Add missing MHU secure-irq
    59b756da49bf video: fbdev: i740fb: Error out if 'pixclock' equals zero
    899f4160b140 binder: remove inaccurate mmap_assert_locked()
    8c2bbfb0ded3 drm/amdgpu: move nbio sdma_doorbell_range() into sdma code for vega
    0a7d86f156fa drm/amdgpu: move nbio ih_doorbell_range() into ih code for vega
    dcef16f64969 drm/amdgpu: Don't enable LTR if not supported
    710ebf8f1a08 tools/include/uapi: Fix <asm/errno.h> for parisc and xtensa
    309e9f4a17cf parisc: Allow CONFIG_64BIT with ARCH=parisc
    9a72466fb61b cifs: always initialize struct msghdr smb_msg completely
    21c47a08f96a cifs: don't send down the destination address to sendmsg for a SOCK_STREAM
    e1aad8c56090 cifs: revalidate mapping when doing direct writes
    b04e0208d025 of/device: Fix up of_dma_configure_id() stub
    8fd27239ca92 parisc: ccio-dma: Add missing iounmap in error path in ccio_probe()
    5f285e4c47c3 block: blk_queue_enter() / __bio_queue_enter() must return -EAGAIN for nowait
    f86092d12fbb drm/meson: Fix OSD1 RGB to YCbCr coefficient
    d38eb1f37538 drm/meson: Correct OSD1 global alpha value
    89cfddd416ba gpio: mpc8xxx: Fix support for IRQ_TYPE_LEVEL_LOW flow_type in mpc85xx
    9a173db71a99 NFSv4: Turn off open-by-filehandle and NFS re-export for NFSv4.0
    cd358b2ee56f pinctrl: sunxi: Fix name for A100 R_PIO
    ca2b798e53d4 pinctrl: rockchip: Enhance support for IRQ_TYPE_EDGE_BOTH
    30fccb4fe449 pinctrl: qcom: sc8180x: Fix wrong pin numbers
    cbafdbb6f6ce pinctrl: qcom: sc8180x: Fix gpio_wakeirq_map
    ba6b9f7cc110 of: fdt: fix off-by-one error in unflatten_dt_nodes()
    c23065adf97f tty: serial: atmel: Preserve previous USART mode if RS485 disabled
    1d01d7beccba serial: atmel: remove redundant assignment in rs485_config
    f3450c33411b drm/tegra: vic: Fix build warning when CONFIG_PM=n
    820b689b4a7a Linux 5.15.69
    277674996dcf Input: goodix - add compatible string for GT1158
    b9b39f7332c5 RDMA/irdma: Use s/g array in post send only when its valid
    125c3ae8a936 usb: gadget: f_uac2: fix superspeed transfer
    fa7e0266c239 usb: gadget: f_uac2: clean up some inconsistent indenting
    07609e83c1b9 soc: fsl: select FSL_GUTS driver for DPIO
    3998dc50ebdc mm: Fix TLB flush for not-first PFNMAP mappings in unmap_region()
    cd698131ef5d usb: storage: Add ASUS <0x0b05:0x1932> to IGNORE_UAS
    6087747599ec platform/x86: acer-wmi: Acer Aspire One AOD270/Packard Bell Dot keymap fixes
    d4441b810bd8 perf/arm_pmu_platform: fix tests for platform_get_irq() failure
    55032fb14d4a net: dsa: hellcreek: Print warning only once
    985a5d3d491d drm/amd/amdgpu: skip ucode loading if ucode_size == 0
    a1347be8f0ff nvmet-tcp: fix unhandled tcp states in nvmet_tcp_state_change()
    3d380f9d1e2b Input: iforce - add support for Boeder Force Feedback Wheel
    b9682878abee ieee802154: cc2520: add rc code in cc2520_tx()
    3a10e8edee2b gpio: mockup: remove gpio debugfs when remove device
    b4ebcd6d48bc tg3: Disable tg3 device on system reboot to avoid triggering AER
    f715188c23fa hid: intel-ish-hid: ishtp: Fix ishtp client sending disordered message
    a86c8d1b36a9 HID: ishtp-hid-clientHID: ishtp-hid-client: Fix comment typo
    2e3aeb48995a dt-bindings: iio: gyroscope: bosch,bmg160: correct number of pins
    1b80691d5115 drm/msm/rd: Fix FIFO-full deadlock
    a9687a2dc7e1 platform/surface: aggregator_registry: Add support for Surface Laptop Go 2
    49801d5f8b67 Input: goodix - add support for GT1158
    709edbac4c45 iommu/vt-d: Fix kdump kernels boot failure with scalable mode
    90f922646f57 tracefs: Only clobber mode/uid/gid on remount if asked
    3c90af5a773a tracing: hold caller_addr to hardirq_{enable,disable}_ip
    64840a4a2d8e task_stack, x86/cea: Force-inline stack helpers
    0b009e5fd146 x86/mm: Force-inline __phys_addr_nodebug()
    f9571a969973 lockdep: Fix -Wunused-parameter for _THIS_IP_
    dee782da3937 ARM: dts: at91: sama7g5ek: specify proper regulator output ranges
    424ac5929d0a ARM: dts: at91: fix low limit for CPU regulator
    8be25fa7cfd6 ARM: dts: imx6qdl-kontron-samx6i: fix spi-flash compatible
    78eb5e326a0e ARM: dts: imx: align SPI NOR node name with dtschema
    3bb12efc5e4d ACPI: resource: skip IRQ override on AMD Zen platforms
    a68a734b19af NFS: Fix WARN_ON due to unionization of nfs_inode.nrequests

(From OE-Core rev: b4f0bc16db0a18baf9234171edce3206319a2c2d)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit fbc8840580fe008c2deda50c0d2d5a98e9b6c564)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
wangmy
b0bf1ab118 lighttpd: upgrade 1.4.66 -> 1.4.67
Changelog:
=============
  * Update comment about TCP_INFO on OpenBSD
  * [mod_ajp13] fix crash with bad response headers (fixes #3170)
  * [core] handle RDHUP when collecting chunked body
  * [core] tweak streaming request body to backends
  * [core] handle ENOSPC with pwritev() (#3171)
  * [core] manually calculate off_t max (fixes #3171)
  * [autoconf] force large file support (#3171)
  * [multiple] quiet coverity warnings using casts
  * [meson] add license keyword to project declaration

(From OE-Core rev: d099203a342b8bbb35656b84c6488e8131cc8648)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 7a399862bb2e1503fbffa18e7ec0767643f76132)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
Markus Volk
e57c26ea29 mesa: update 22.2.0 -> 22.2.2
Mesa 22.2.2 is a bug fix release which fixes bugs found since the 22.2.1 release.

New features

None

Bug fixes

radv: Crash in dEQP-VK.ray_query.misc.dynamic_indexing
glthread: radeonsi: offset textures in game starsector with glthread enabled
Crashing on Windows VM
Exanima renders with the wrong colors.
nouveau: tegra124: GL_OUT_OF_MEMORY error

Changes

freedreno: Fix graphic glitches on a4xx and a5xx
nir/lower_system_values: Fix cs_local_index_to_id with variable workgroups
pan/mdg: Lower PIPE_COMPUTE_CAP_MAX_THREADS_PER_BLOCK on Midgard
pan/mdg: Fix 16-bit alignment with spiller
nir: Fix nir_fmax_abs_vec_comp
gallium/vl: Add opaque rgb pixel formats
aco/spill: Fix spilling of Phi operands
tu: Reset whether there is DS resolve for dynamic subpass
gallivm: handle llvm coroutines for llvm > 15
nouveau: treat DRM_FORMAT_INVALID as implicit modifier
docs: Add sha256 sum for 22.2.1
.pick_status.json: Update to 243aa6b2ec0c2626b1333ba666a6d6d60ede8505
.pick_status.json: Update to c4482a3c1a973975eb27ac284a18bebca24f7876
.pick_status.json: Update to 3eed5931edf6e5f45378b013ca21f98f17af2b34
.pick_status.json: Update to b02e9ef35a0446019cda9473e4c355c7cc4bb24d
.pick_status.json: Mark 4c7a44413a07d3fb314f786e047bb7212c082a6c as denominated
.pick_status.json: Mark dbd022f2ab43ff0a9ecc05c61123467e25f109de as backported
turnip: Don’t use the dynamic color write enable during non-dynamic.
gallium/u_threaded_context: remove stale comment
r300: don’t use smooth line if not requested
r600/sfn: Always start a new CF after a KILL instruction
r600/sfn: don’t propagate registers into conditional test
virgl: Report CONSTANT_BUFFER_SIZE according to GL_MAX_UNIFORM_BLOCK_SIZE
vulkan/runtime: don’t lookup the pipeline disk cache if disabled
anv: initialization pipeline layout to 0s
anv: add missing tracepoint
clc/clover: Link clang statically when shared-llvm is disabled
zink: clamp line_stipple_factor to 1 if stipple is disabled
zink: unset rp_changed after initializing renderpass attachments
zink: disable fbfetch when flushing clears
vulkan/wsi: Add dep_libudev to idep dependencies
gallium/va: vaDeriveImage to check PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP
d3d12: Implement cap PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP
zink: fix invalid Offset set for variables which do not need an offset
zink: stop enabling minmax filtering when not supported
zink: fix isNan mismatch between NIR and SPIR-V
util/conf: enable init to zero workaround for Exanima
util/radeonsi: enable zerovram workaround for Exanima
radv: add radv_zero_vram workarounds for OpenGL games
glthread: fix matrix stack depth tracking
glthread: leave dlist dispatch in place for Begin/End
util: Turn -DWINDOWS_NO_FUTEX to be pre_args

- add a PACKAGECONFIG for perfetto support

(From OE-Core rev: a68121557f72ebccc92adaec0df2b43abe11869d)

Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit cbcaff0b4cc349706b9847f4262746b43adba209)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
Ross Burton
baccaad9a0 zlib: upgrade 1.2.12 -> 1.2.13
Changes in 1.2.13 (13 Oct 2022)
- Fix configure issue that discarded provided CC definition
- Correct incorrect inputs provided to the CRC functions
- Repair prototypes and exporting of new CRC functions
- Fix inflateBack to detect invalid input with distances too far
- Have infback() deliver all of the available output up to any error
- Fix a bug when getting a gzip header extra field with inflate()
- Fix bug in block type selection when Z_FIXED used
- Tighten deflateBound bounds
- Remove deleted assembler code references
- Various portability and appearance improvements

Drop a number of patches whicih have been merged upstream.

(From OE-Core rev: b7805c7daef0690e27d44aa18cf3946e3108abbf)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 115eb5326dc7f9256d58147b3655cd13d5994cfc)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
Ross Burton
c5c4cbb024 zlib: do out-of-tree builds
zlib supports out-of-tree builds, so do them.

(From OE-Core rev: 2cd077f6396efd940d873c5f7f0f7614d1626ac3)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit e8bf682e9ccf2ddce5149f01ba788ca813329221)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
wangmy
394054d7ca lttng-ust: upgrade 2.13.4 -> 2.13.5
Changelog:
==========
* Fix: bytecode validator: reject specialized load field/context ref instructions
* Fix: bytecode validator: reject specialized load instructions
* Fix: event notification capture: validate buffer length
* Fix: event notification capture error handling
* Fix: lttng-ust-comm: wait on wrong child process
* fix: 'make dist' without javah

(From OE-Core rev: d96afd6159b696dc18a7d6ab3731ad1ac258c98c)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 569d6c271bf782cb4a524603693adbbe3d020f92)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
wangmy
27e0f91aaa libsdl2: upgrade 2.24.0 -> 2.24.1
This is a stable bugfix release, with the following changes:

Windows

Only check to see if the ICC profile changes when the display changes or we gain focus
Fixed window resize handing when using the D3D12 renderer
Fixed Xbox controller detection on Windows XP

macOS

Fixed long delay in SDL_CloseAudioDevice()

Linux

Fixed crash in Wayland_HasScreenKeyboardSupport()

FreeBSD

Fixed building without GNU sort, but warn that dynamic libraries won't be found

Emscripten

Fixed infinite recursion related to mutexes on startup

OS/2

Fixes and improvements to SDL_LoadObject() functionality

0001-Disable-libunwind-in-native-OE-builds-by-not-looking.patch
refreshed for new version.

(From OE-Core rev: 3c686477cc7557060fd9152f7546f00099a630a2)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit aa45a2fad9ecd5d553c605dc6b3d4cd70d7d7776)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
wangmy
079bb45350 libksba: upgrade 1.6.0 -> 1.6.2
New upstream release fixing CVE-2022-3515

(From OE-Core rev: 8e453d64255ce6a01b193c3735bb0aefbaa6fb38)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 4bef6fc673de958dfbab80bcbc2e0159803b97ee)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
wangmy
2dd06fb636 wpebackend-fdo: upgrade 1.12.1 -> 1.14.0
Changelog:
==========
Fixed a crash caused by trying to deallocate already freed graphics buffers in certain situations.

(From OE-Core rev: d650490c7786edde665472a38eb68f6db1f6aa4d)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 0db4627fe8c6f8a0080248052dc06419774cba4f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
wangmy
8ed9ff8919 numactl: upgrade 2.0.15 -> 2.0.16
Commits
5a99c6d: Revert "numademo: fix error on 32bit system" (Andi Kleen)
04da3af: fix the memory leak of numa_preferred api (luochenglcs) #139
86edd38: when preferred_many is not supported, fall back to preferred will (luochenglcs) #137
413a93f: add cut-release github workflow (#142) (LUCIANO FURTADO) #142
10285f1: Release numactl 2.0.16 (Filipe Brandenburger)

(From OE-Core rev: 5ab90209ef18876285bd62468e9cec7a9a80608d)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 6d9ed8d4b13c2d87dae482bbadef039de050bc9d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
wangmy
86eaa373a7 libical: upgrade 3.0.14 -> 3.0.15
Changelog:
=========
 Add missing property parameters into libical-glib
 Fix CMake option USE_32BIT_TIME_T actually uses a 32-bit time_t value
 Fix icaltime_as_timet, which returned incorrect results for years >= 2100, to work properly between years 1902 and 10k.
 Fix x-property comma handling and escaping
 Built-in timezones updated to tzdata2022d (now with a VTIMEZONE for each time zone alias)
 Fix fuzzer issues
 Handle unreachable-code compile warnings with clang
 Ensure all vanew_foo() calls finish with (void*)0 (not 0)

(From OE-Core rev: 68e89fb36d43db7a655a3a73933e403bb0932ff3)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 6092ae3cbe0eaf006db615c6cc3f1692e1cc1df8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
wangmy
b0b966ad07 libcap: upgrade 2.65 -> 2.66
RELEASE NOTES FOR 2.66

Fix documentation typos in cap_from_text.3 (Bug: 216514 reported by Paulo Andrade.)

Some getpcaps code clean up and a fix for PID argument parsing from Jakub Wilk.

Slightly more robust Makefiles to address an error with make -j48 test observed by Tomasz Kłoczko.

Include a simple Go program, captrace, to trace kernel capability validation checks

This program can be used to figure out what capabilities a program needs to operate.

captrace (a wrapper for bpftrace) uses BPF kprobes to monitor the kernel for capability checks and whether or not they succeed for the system, a specific PID or a program's direct execution.

Trim down the default file capabilities for contrib/sucap/su to those actually needed and set USER and HOME environment variables so bash doesn't complain about a sourcing error.

(From OE-Core rev: 21f57b4341d8520c1e7319b2b9a0616af61e0f68)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 9040e612084a561b1766bb86c9c002b811eea4c9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
Tim Orling
fc5bc29d1b vim: upgrade 9.0.0614 -> 9.0.0820
Includes fixes for CVE-2022-3705
https://nvd.nist.gov/vuln/detail/CVE-2022-3705

For a short list of important changes, see:
https://www.arp242.net/vimlog/

(From OE-Core rev: 1b0ce402ef432cacb824a49aeb039732fe25dc9d)

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f6d917bd0f8810b5ed8d403ad25d59cda2fc9574)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-09 17:42:13 +00:00
Ed Tanous
8a3bbee311 openssl: Upgrade 3.0.5 -> 3.0.7
OpenSSL 3.0.5 includes a HIGH level security vulnerability [1].

Upgrade the recipe to point to 3.0.7.

CVE-2022-3358 is reported fixed in 3.0.6, so drop the patch for that as
well.

[1] https://www.openssl.org/news/vulnerabilities.html

Fixes CVE-2022-3786 and CVE-2022-3602: X.509 Email Address Buffer Overflows
https://www.openssl.org/blog/blog/2022/11/01/email-address-overflows/

(From OE-Core rev: 48f9f92c547fac35ff398180a32a5b0829cd9fff)

Signed-off-by: Ed Tanous <edtanous@google.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit a69ea1f7db96ec8b853573bd581438edd42ad6e0)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:49 +00:00
wangmy
b1b1c9232f gnutls: upgrade 3.7.7 -> 3.7.8
Changelog:
=========
** libgnutls: In FIPS140 mode, RSA signature verification is an approved
   operation if the key has modulus with known sizes (1024, 1280,
   1536, and 1792 bits), in addition to any modulus sizes larger than
   2048 bits, according to SP800-131A rev2.

** libgnutls: gnutls_session_channel_binding performs additional checks when
   GNUTLS_CB_TLS_EXPORTER is requested. According to RFC9622 4.2, the
   "tls-exporter" channel binding is only usable when the handshake is
   bound to a unique master secret (i.e., either TLS 1.3 or extended
   master secret extension is negotiated). Otherwise the function now
   returns error.

** libgnutls: usage of the following functions, which are designed to
   loosen restrictions imposed by allowlisting mode of configuration,
   has been additionally restricted. Invoking them is now only allowed
   if system-wide TLS priority string has not been initialized yet:
gnutls_digest_set_secure
gnutls_sign_set_secure
gnutls_sign_set_secure_for_certs
gnutls_protocol_set_enabled

(From OE-Core rev: a583ac20cc82ede59e1a4e30708cf5434b49ce37)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 858886aa07d0c2c2ef2489996cc8eca5fbe931fa)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:49 +00:00
Vyacheslav Yurkov
cc4b3a0040 overlayfs: Allow not used mount points
When machine configuration defines a mount point, which is not used in
any recipe, allow to fall through and only report a note in the logs.
This can be expected behavior, when a mount point is defined for several
machines, but not used in all of them

(From OE-Core rev: c7c6b273656a3e2b8b959004b996e56d4086ce5e)

Signed-off-by: Vyacheslav Yurkov <Vyacheslav.Yurkov@bruker.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
(cherry picked from commit a9c604b5e0d943b5b5f7c8bdd5be730c2abcf866)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:49 +00:00
Joshua Watt
900420392d runqemu: Fix gl-es argument from causing other arguments to be ignored
The code to parse arguments was inadvertently skipping all arguments in
the elif block after gl-es if it was specified on the command line.

(From OE-Core rev: dd1dcfada1fa46ecb8227c2852769b35026875d3)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 718bb8d56f6a24c86e67830a7d13af54df2ebb4e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:49 +00:00
Joshua Watt
03f1b28c6d runqemu: Do not perturb script environment
Instead of changing the script environment to affect the child
processes, make a copy of the environment with modifications and pass
that to subprocess.

Specifically, when dri rendering is enabled, LD_PRELOAD was being passed
to all processes created by the script which resulted in other commands
(e.g. stty) exiting with a failure like:

 /bin/sh: symbol lookup error: sysroots-uninative/x86_64-linux/lib/librt.so.1: undefined symbol: __libc_unwind_link_get, version GLIBC_PRIVATE

Making a copy of the environment fixes this because the LD_PRELOAD is
now only passed to qemu itself.

(From OE-Core rev: 91c2449d4e873b2cec8777d71e218a12f899669d)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 2232599d330bd5f2a9e206b490196569ad855de8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:49 +00:00
Jeremy Puhlman
692a8ab550 qemu-native: Add PACKAGECONFIG option for jack
With libjack-devel or jack-audio-connection-kit-devel, qemu-native
detects the library/header and tries to build with it. Since its
missing from the sysroot, it fails to build.

 -O2 -fPIE -D_REENTRANT -Wno-undef -MD -MQ libcommon.fa.p/audio_jackaudio.c.o
-MF libcommon.fa.p/audio_jackaudio.c.o.d -o libcommon.fa.p/audio_jackaudio.c.o
-c ../qemu-6.2.0/audio/jackaudio.c
| ../qemu-6.2.0/audio/jackaudio.c:34:10: fatal error: jack/jack.h: No such file
or directory
|    34 | #include <jack/jack.h>
|       |          ^~~~~~~~~~~~~
| compilation terminated.

(From OE-Core rev: 7c8f23aa594175f2169df0d62051bf42d491a1bb)

Signed-off-by: Jeremy A. Puhlman <jpuhlman@mvista.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 27260be388f7f9f324ff405e7d8e254925b4ae90)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Jan-Simon Moeller
94270812fa buildtools-tarball: export certificates to python and curl
The custom path of the ca-certificates.crt within the buildtools-tarball requires more
environment variables to be exported. Namely REQUESTS_CA_BUNDLE for the python requests library
and CURL_CA_BUNDLE for curl.

(From OE-Core rev: facafa0f76af9cbf80f862497b66c18b3fbfa60b)

Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
(cherry picked from commit 5c249db9de8ad8cfe0996ff4fee4c575a5ff1e34)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Kai Kang
570e56775b mesa: only apply patch to fix ALWAYS_INLINE for native
0001-nir-nir_opt_move-fix-ALWAYS_INLINE-compiler-error.patch is not
needed by target mesa any more. But it still fails to compile
mesa-native without this patch when DEBUG_BUILD is enabled on Ubuntu
18.04 with gcc 7.5.0:

| ../mesa-22.1.6/src/compiler/nir/nir_inline_helpers.h: In function ‘nir_opt_move_block’:
| ../mesa-22.1.6/src/compiler/nir/nir_opt_move.c:55:1: error: inlining failed in call to
    always_inline ‘src_is_ssa’: indirect function call with a yet undetermined callee
|  src_is_ssa(nir_src *src, void *state)
|  ^~~~~~~~~~

So only apply it for mesa-native.

(From OE-Core rev: f6fb2da56ef1f35b536ebf62a03e10bba59d8276)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit c6a6d0c2680799683d58968c2558a224f27caaa2)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
wangmy
0dfef83aa5 ifupdown: upgrade 0.8.37 -> 0.8.39
ifupdown (0.8.38)
  * Remove dependency on lsb-base (Closes: #1020604)
  * Remove pump support (no longer in Debian archive)
  * Fix error message when turning down VLAN interfaces. Thanks to Aleksandr
    Muravjov (Closes: #1007889)
  * Ship Ubuntu's integration scripts for systemd-resolved. Thanks to Luca
    Boccassi (Closes: #1016798)
  * Add rfkill support. Thanks to Sebastian Reichel <email address hidden>
    (Closes: #645559)

ifupdown (0.8.39)
  * Add execution permission on resolved scripts. Thanks to Vincent Lefèvre
    (Closes: #1021259)

(From OE-Core rev: 342fb3183fd1910b76c2bed242bf8b2ea179d217)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f0462e3336c7134aeeb2684692732c187971b330)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
wangmy
adaa8ad2a5 mtools: upgrade 4.0.40 -> 4.0.41
disable-hardcoded-configs.patch
refreshed for new version

Changelo:
=========
- Made it possible again to have FAT32 filesystems with less
  than 0xfff5 clusters
- Make FAT32 entries 0 and 1 match what windows 10 does
- Misc source code and configure script cleanup

(From OE-Core rev: 9ac0de44f11123876a92f7d7819d5ff2c20475b7)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit b19127f0cd0e10c7180c138284b38c97fa9db7af)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Ross Burton
811f8a09eb pango: upgrade 1.50.9 -> 1.50.10
Overview of changes in 1.50.10, 16-09-2022
=========================================
- Avoid some unnecessary strdups
- Fix line height computations with a non-trivial CTM

(From OE-Core rev: 78dc0bf6384349c23a54f59d89988ad242125581)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
(cherry picked from commit 884ce27b9cee231e093fe53192d04133c437404e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Teoh Jay Shen
72157834c6 vim: Upgrade 9.0.0598 -> 9.0.0614
Include fixes for CVE-2022-3352.

(From OE-Core rev: 9067e3a24bc5558af6a41f2c5e6f16c37116e3ed)

Signed-off-by: Teoh Jay Shen <jay.shen.teoh@intel.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
(cherry picked from commit 8aa707f80ae1cfe89d5e20ec1f1632a65149aed4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
wangmy
25cfdd66e4 meson: upgrade 0.63.2 -> 0.63.3
(From OE-Core rev: fe33134efbe109b9f3bffa1b05fd6fed8860129c)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 3c87597dcde7676858f76c1066cd87195ecc8aef)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Liam Beguin
33711d546d meson: make wrapper options sub-command specific
The meson-wrapper adds setup options to facilitate cross-compilation.
The current options are exclusive to the setup sub-command and might
cause issues with other sub-commands.

Update the wrapper to make options sub-command specific.

(From OE-Core rev: 4475250ee0d83cc90322f2fcd9ec8df7c05b6903)

Signed-off-by: Liam Beguin <liambeguin@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 7bcda141f2019862b4fb5d8dec7956cd8344b420)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Ross Burton
1c94f9d64b qemu: backport the fix for CVE-2022-3165
(From OE-Core rev: d63c5b210b50a2c332a5c309298ec13b510cc7c8)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d820389728b0f5e085954b4f995da2b2014acedf)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Qiu, Zheng
e6daf39c9b tiff: fix a typo for CVE-2022-2953.patch
The CVE number in the patch is a typo. CVE-2022-2053 is not related to
libtiff. So fix it.

(From OE-Core rev: 3ef84008bf729f74f1244e8b57451cdeb3a9e262)

Signed-off-by: Zheng Qiu <zheng.qiu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit c9f76ef859b0b4edb83ac098816b625f52c78173)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Ross Burton
7ffb05dd16 tiff: fix a number of CVEs
Backport fixes from upstream for the following CVEs:
- CVE-2022-3599
- CVE-2022-3597
- CVE-2022-3626
- CVE-2022-3627
- CVE-2022-3570
- CVE-2022-3598

(From OE-Core rev: bfd6d135a555e854e30d45ea36b0cbd612e322df)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 722bbb88777cc3c7d1c8273f1279fc18ba33e87c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Ross Burton
8074213da8 xserver-xorg: backport fixes for CVE-2022-3550 and CVE-2022-3551
(From OE-Core rev: 9163db79ec90ff4b8ecd189f5fb6e44e27b9e53b)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit e32401d8bf44afcca88af7e4c5948d2c28e1813f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Ross Burton
f435cff54a xserver-xorg: ignore CVE-2022-3553 as it is XQuartz-specific
(From OE-Core rev: 2017ed15cc5b29319fe1b769c1fcfc5c2f799fd8)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 769576f36aac9652525beec5c7e8a4d26632b844)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Ross Burton
a6586821f0 libx11: apply the fix for CVE-2022-3554
(From OE-Core rev: 3a65a787d1b53f57cd0eedbf7a70ce6dcde0d148)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 5d30f124274d2822d72b56f84eb8c8ae64e31e0d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Hitendra Prajapati
0bc04f5e6d openssl: CVE-2022-3358 Using a Custom Cipher with NID_undef may lead to NULL encryption
Upstream-Status: Backport from https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=5485c56679d7c49b96e8fc8ca708b0b7e7c03c4b]
Description:
	CVE-2022-3358 openssl: Using a Custom Cipher with NID_undef may lead to NULL encryption.
Affects "openssl < 3.0.6"

(From OE-Core rev: c28dc71f17133f6e4470fc0c1a552c743869b3ad)

Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit f98b2273c6f03f8f6029a7a409600ce290817e27)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-11-04 23:31:48 +00:00
Richard Purdie
6b9db5a99b bitbake: tests/fetch: Allow handling of a file:// url within a submodule
CVE-2022-39253 in git meant file:// urls within submodules were disabled. Add
a parameter to the commands in the tests to allow this to continue to work.

(Bitbake rev: 209f7ba352b60722830157054e3fc56cb9c693eb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-26 23:02:11 +01:00
Mark Asselstine
6672cbe670 bitbake: tests: bb.tests.fetch.URLHandle: add 2 new tests
Add a test for special characters in user and password to qualify
decodeurl() inspired by a bug report describing that '=' signs in a
password was problematic.

Add a second test to qualify decodeurl() as related to the change in
commit 628c4bf6c89b [fetch2/__init__: handle @ in package names].

Relates to [YOCTO #14476]

(Bitbake rev: ee04cf09c7022168c035affa654773652a49793e)

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-26 23:02:10 +01:00
Michael Opdenacker
c58059d282 bitbake: doc: bitbake-user-manual: expand description of BB_PRESSURE_MAX variables
(Bitbake rev: 72e9847dd578c3cbed52a9c16fea23ebbeef5046)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-26 23:02:10 +01:00
Mark Hatle
ec08faf2e4 bitbake: utils/ply: Update md5 to better report errors with hashlib
In the case where hashlib is not available, the try would fail and fall
through resulting in a backtrace on the usage of the 'sig'.  The backtrace
itself was confusing and made it difficult to determine what went wrong.

Update the import to be in it's own try block with an appropriate
message to indicate what went wrong.

Note, the current version of ply all of this code has been restructured
so this is not applicable upstream.

Additionally, some versions of hashlib don't appear to implement the
second FIPS related argument.  Detect this and support both versions.

(Bitbake rev: 484ab42f440070c0369b81f5c69da860fa47a798)

Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-26 23:02:10 +01:00
Johan Korsnes
7aa3ed5c37 bitbake: bitbake: user-manual: inform about spaces in :remove
Inform the reader that there should be no need for spaces in the value
when using removal override `:remove`.

Considering why spaces are used in the other override operators, it
might seem obvious that they aren't needed for the removal operator.
But, it seems like I'm not the first to be confused about this.

Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Cc: Ross Burton <ross.burton@arm.com>
Cc: Nicolas Dechesne <nicolas.dechesne@linaro.org>
(Bitbake rev: 0a493a772f83436cbe909de93c157f4ab2d2d136)

Signed-off-by: Johan Korsnes <johan.korsnes@remarkable.no>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-26 23:02:10 +01:00
Richard Purdie
b6d633e7f3 openssl: Fix SSL_CERT_FILE to match ca-certs location
In OE-Core d6b15d1e70b99185cf245d829ada5b6fb99ec1af,
"openssl: export necessary env vars in SDK", the value added for
SSL_CERT_FILE was in conflict with the value used elsewhere, such as
in buildtools. This makes them match and fixes buildtools testsdk
failures.

(From OE-Core rev: d40f7ddcfbdd5cb1d9f96271fefddf67e9044bb9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-26 23:01:18 +01:00
Lee Chee Yang
5724847549 migration-guides/release-notes-4.1.rst: update Repositories / Downloads
(From yocto-docs rev: 8e0841c3418caa227c66a60327db09dfbe72054a)

Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:55:27 +01:00
Ross Burton
7deed5f7b1 lighttpd: fix CVE-2022-41556
Backport the fix from upstream to fix this CVE.

(From OE-Core rev: 59f69125fb00dc8fd335f32fe6898e7a480141e4)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Keiya Nobuta
5b62ac0a3c gnutls: Unified package names to lower-case
create-spdx can't detect the license properly if the case doesn't
match, so fix it.

(From OE-Core rev: 9c87828493784d996910d742006268a626ef0130)

Signed-off-by: Keiya Nobuta <nobuta.keiya@fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Frank de Brabander
180de83da8 cve-update-db-native: add timeout to urlopen() calls
The urlopen() call can block indefinitely under some circumstances.
This can result in the bitbake process to run endlessly because of
the 'do_fetch' task of cve-update-bb-native to remain active.

This adds a default timeout of 60 seconds to avoid this hang, while
being large enough to minimize the risk of unwanted timeouts.

(From OE-Core rev: e5f6652854f544106b40d860de2946954de642f3)

Signed-off-by: Frank de Brabander <debrabander@gmail.com>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Ross Burton
ee9db0d1fd glib-2.0: fix rare GFileInfo test case failure
If a access or creation timestamp has 0 microseconds, then the test
fails as it doesn't expect this to be a valid value.  Expand a previous
fix for modification times to cover these timestamps too.

[ YOCTO #14373 ]

(From OE-Core rev: 15715e6ad81c97cd50e288f3745615eb19be90d1)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Chen Qi
a5e4b5d175 openssl: export necessary env vars in SDK
In current SDK, when running the following command in python
shell, we get an error.

$ python3
>>> from cryptography.hazmat.backends import openssl

The error message is as below:

  cryptography.exceptions.InternalError: Unknown OpenSSL error.

We could set OPENSSL_MODULES explicitly in nativesdk-openssl package
so that when SDK is set up, it's in environment and we can
get rid of the above error.

Also, there are other env vars that need to be exported. And we export
all of them to keep sync with openssl-native.bbclass.

(From OE-Core rev: d6b15d1e70b99185cf245d829ada5b6fb99ec1af)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Bartosz Golaszewski
df88a6b20a bluez5: add dbus to RDEPENDS
Unless we're using systemd, dbus is not pulled into the system
automatically. Bluez5 will not work without dbus so add it to RDEPENDS
explicitly.

(From OE-Core rev: 377ef7009a8638efe688b6b61f67ae399eb1f23d)

Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Ross Burton
c34d00cd1b zlib: use .gz archive and set a PREMIRROR
When a new zlib release is made, the top-level URL is no longer available
and it is only available as a .gz under the /fossils/ directory.

When this happens the source fetch fails and bitbake noisily warns that
it is using the mirrors.  Avoid this by using the .gz tarball and add
the /fossils/ directory to PREMIRRORS so fetches will check there too.

(From OE-Core rev: c67f71abc61afec701c50e4e7941128eb701fb0a)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Adrian Freihofer
988a27974f own-mirrors: add crate
Support downloading crate files from a mirror at SOURCE_MIRROR_URL.

(From OE-Core rev: aebf4f183267a1e2f073078ade0ddc916ceed53f)

Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Peter Kjellerstedt
5c8103695d gcc: Allow -Wno-error=poison-system-directories to take effect
The change in commit e903b29f (gcc-cross: pass
-Werror=poison-system-directories to compiler stages) made it impossible
to disable the error using -Wno-error=poison-system-directories.

(From OE-Core rev: 1cb0245539f7d5277fae4e9abc7f2a0130d0caa8)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Khem Raj
dc0af3be0f perf: Depend on native setuptools3
perf has need for python setuptools when scripting is enabled
from 6.0.0 onwards it seems to throw an explicit error

(From OE-Core rev: da3d00178809bbf7cc453401e0c5937796ebc2c1)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Alex Kiernan
6ba44ce2ee u-boot: Add savedefconfig task
Add savedefconfig task which U-Boot supports (unfortunately not all
consumers of cml1 support this).

(From OE-Core rev: efc54f1f836651c8ef27a683a9e5d583c8ce87a6)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Alex Kiernan
691fb631a2 u-boot: Remove duplicate inherit of cml1
Splitting u-boot-configure.inc out of the base left duplicate
cml1.bbclass in the base include.

Fixes: fc9a17ad38 ("u-boot: Split do_configure logic into separate file")
(From OE-Core rev: 286f91f7659307bcdf0ba541b8d6b56db5604ceb)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Ross Burton
79af23dc5e oe/packagemanager/rpm: don't leak file objects
(From OE-Core rev: 28706c27680745c9f8df27713ce63ef5d611138c)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Mark Hatle
5f60768030 insane.bbclass: Allow hashlib version that only accepts on parameter
Some versions of hashlib don't appear to implement the second FIPS
related argument.  Detect this and support both versions.

(From OE-Core rev: 2bbabed51e3aca138486d3feef640f5d3249be40)

Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Ross Burton
1582d7d3e9 opkg-utils: use a git clone, not a dynamic snapshot
opkg-utils fetches using a cgit snapshot of a tag, which is not
reproducible as the tag could move, not reliable as a future dynamic
snapshot could have a different checksum, and a waste of CPU load as
these tarballs are built on demand.

Switch opkg-utils to use a proper git clone of the relevant SHA.

(From OE-Core rev: dafd2631a20ffd94e6f21c46938a010e92b57da4)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Thomas Perrot
bd22878de3 psplash: add psplash-default in rdepends
Otherwise when the installation of recommended packages is prevented
(NO_RECOMMENDATIONS = "1"), then splash screen will not be cast.

(From OE-Core rev: 2a0928532b8303858980d6df6271669dbb69e224)

Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Jon Mason
e1053b622c linux-yocto: add efi entry for machine features
EFI has kernel features when need to be enabled for it to boot.  Add the
existing kernel config fragment to the kernel config if this machine
feature is enabled.

(From OE-Core rev: 439f23eed94438494569f286b52e4f6c70ebac2f)

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Ming Liu
5052a071e5 dropbear: add pam to PACKAGECONFIG
Add pam to PACKAGECONFIG to make the code cleaner.

(From OE-Core rev: 4d0c566a79cf7c0b7c86eaa7c99aa185fcf37bb5)

Signed-off-by: Ming Liu <liu.ming50@gmail.com>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:03 +01:00
Ross Burton
378f67bd82 externalsrc: move back to classes
The externalsrc class was moved to classes-recipe as part of oe-core
f5c1280, but it can be used in both recipe and global contexts so move
it back to classes/.

(From OE-Core rev: 7a2edcd4b7cb5a2d829289a11eff62663268fbf3)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:02 +01:00
Ross Burton
7e4b96e911 scripts/oe-check-sstate: force build to run for all targets, specifically populate_sysroot
Since the commit "populate_sdk_base/images: Drop use of 'meta' class and
hence do_build dependencies"[1], builds of images or SDKs don't
recursively depend on the top-level do_build target.  This is typically
a good thing: images just depend on the packages themselves and those
dependencies already exist, but they don't need each recipes sysroot to
be populated.

However, eSDK generation is partly done via the script oe-check-sstate,
which does a 'dry-run' build of the target and collates all of the
sstate that is used.  With this commit the sstate that is used is a
fraction of what would be needed in the SDK, specifically there are no
sysroots populated during the build, so there are no sysroots in the
SDK.

This is obviously a problem, as the entire point of an eSDK is to
contain a sysroot.  Resolve this problem by forcing bitbake to run the
build task for all targets, so that all potentially needed sstate is
collated.

[YOCTO #14626]

[1] 41d7f1aa2c

Tested-by: Andrej Valek <andrej.valek@siemens.com>
(From OE-Core rev: 1b62344f919b5122f048b6409d09386d7d6dd3cd)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:02 +01:00
Ross Burton
4fd15f4e3a scripts/oe-check-sstate: cleanup
The scriptutils import isn't used, there's no need to run bitbake
in a shell environment, and invoke bitbake as a list instead of a
string.

(From OE-Core rev: 663aa284adf312eb5c8a471e5dbff2634e87897d)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:02 +01:00
Ross Burton
c1304a0231 populate_sdk_base: ensure ptest-pkgs pulls in ptest-runner
Since "package_manager: Change complementary package handling to not
include soft dependencies"[1], complementary packages don't pull in
recommendations, just depends.  However, ptest.bbclass has a recommends
on ptest-runner, so if ptest packages are in an image via the ptest-pkgs
IMAGE_FEATURE, ptest-runner doesn't get installed.

[ YOCTO #14928 ]

[1] oe-core b44b0b9294675f89aa51ff84f532664f4c479677

(From OE-Core rev: ecff0642be5781f7f6cca617158b04ac9a0e85f0)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:02 +01:00
Paul Eggleton
dce3019212 install-buildtools: support buildtools-make-tarball and update to 4.1
Support installing buildtools-make-tarball that is built in version 4.1
and later for build hosts with a broken make version. Also update the
default version values to 4.1.

(From OE-Core rev: 5d539268d0c7b8fad1ba9352c7f2d4b81e78b75c)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:42:02 +01:00
Michael Opdenacker
9c8907cf88 poky.conf: remove Ubuntu 21.10
Ubuntu 21.10 is no longer updated by Canonical
and since 22.04 is available and supported, it's
no longer useful to test it and declare it as supported.

(From meta-yocto rev: 8f8bde4f5a9b37d3a93615c22b1896fd47973478)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:41:36 +01:00
Quentin Schulz
641c4d3a1c docs: add support for langdale (4.1) release
This adds support for the Langdale (4.1) release and update the current
dev branch to Mickledore.

Cc: Quentin Schulz <foss+yocto@0leil.net>
(From yocto-docs rev: 271ae164ba901acacaf2fc910db78246637994aa)

Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:41:36 +01:00
Lee Chee Yang
56e3989b89 migration-guides/release-notes-4.1.rst: update Repositories / Downloads
(From yocto-docs rev: 99dac0ecc497d50be652a47c8a2ce8855975e360)

Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:41:36 +01:00
Michael Opdenacker
e3d914b343 ref-manual: classes.rst: add links to all references to a class
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: 664b658d9d23bb97b236bc0d09c9d3f118c582fc)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>

--

Doing this to consistently replace any reference to a class
by the corresponding link. This is a bit trivial within the declaration
of a class, but helps making sure that this rule applies everywhere.

This helps for example to rename or remove classes from the
documentation.

See https://bugzilla.yoctoproject.org/show_bug.cgi?id=14508

As this change is time consuming, submitting the first part of it
as an RFC, to double check there is an agreement on doing this.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:41:36 +01:00
Michael Opdenacker
3a3a9728ec manuals: updates for building on Windows (WSL 2)
- Use the Wikipedia naming scheme: WSL 2 instead of WSLv2
- Take into account Windows Server 2019 and 2022 which are
  supported too.
- Improve some explanations

(From yocto-docs rev: 35c5fb01d3543ef5e1f4edf337a2ab080b4e7956)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Reviewed-by: Quentin Schulz <foss@0leil.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-25 13:41:36 +01:00
Takayasu Ito
95c802b0be release-notes-4.1.rst remove bitbake-layers subcommand argument
(From yocto-docs rev: 0f088df1027b38a47f4161fe0910150ff42c1861)

Signed-off-by: Takayasu Ito <ito@lineo.co.jp>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-21 12:23:50 +01:00
Michael Opdenacker
f4fe7cdaa7 migration-guides: use contributor real name
(From yocto-docs rev: e0dc444cc1807a36f0e83f025bbf212b741d01f8)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Michael Opdenacker
d09132d130 manuals: fix misc typos
(From yocto-docs rev: 988efd0d1663e4369043c5b53d7e1dcd9e54d3cd)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Ross Burton
43cc9a16c1 migration-guides/release-notes-4.1.rst: add more known issues
Clarfify the eSDK issue, and document the externalsrc issue.

(From yocto-docs rev: 25cbbe19c935293e0549d89b6716a0fae229113c)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Ross Burton
2f9472efbc migration-guides: add known issues for 4.1
(From yocto-docs rev: 34ad768a05d6ba87aab64f0aa85e63d4233e0696)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Alexander Kanavin
ff39a784b4 sdk-manual: correct the bitbake target for a unified sysroot build
(From yocto-docs rev: aef76d4e5190aad98c19d91ed56c256504dd4660)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Michael Opdenacker
736135a53d migration-guides: use contributor real name
From the "Signed-off-by" information from his commits

(From yocto-docs rev: 7a2416b8d920f2af6d98df7aeb10d51268a15cd6)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Michael Opdenacker
051e8d83bb ref-manual: faq.rst: reorganize into subsections, contents at top
Reorganize the FAQ into sections and subsections, which allows
to have a table of contents at the top. This makes it easier
to find relevant questions without having to scroll down the entire page.

Reduce the size of questions so that they fit in a subsection title.

Merged two redundant questions about fetching sources and working
through proxies.

Minor updates to other sections.

(From yocto-docs rev: 3e24f94e9c2186a6e1d65d82a87323ef2fc6f87d)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Michael Opdenacker
1cba941726 test-manual: fix typo in machine name
(From yocto-docs rev: 34fea9a84b6a7dadc5aa4218213a76e56cad7ea7)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
a0fbaf259c Add 4.1 migration guide & release notes
This currently does not include known issues or download information.

(From yocto-docs rev: a5c991235e2c063a065d610b3d2a96f5ac534a01)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
ae9eb5684a ref-manual: add OVERLAYFS_QA_SKIP
New variable in 4.1.

(From yocto-docs rev: 105a44efe290ac36a370a4946aadc2e046a86e64)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
01372ac01c ref-manual: add overlayfs class variables
The overlayfs class was added in the honister release.

(From yocto-docs rev: cff6b5a167d8f7d99a351c7989bc86af5e553552)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
9e56bf9d8e ref-manual: add section for create-spdx class
create-spdx was added in the honister release. This is a stub since I
unfortunately don't have time to fully document this class and related
variables, hopefully someone else can expand it in future.

(From yocto-docs rev: 5a4aa9dca1468d56ab5ec2c3a5ebf1ea364df5d0)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
7a417c450e ref-manual: add WIRELESS_DAEMON
Not new in 4.1, but the syntax and usage in packagegroup-base is.

(From yocto-docs rev: 01f8393989528ed655fd20338c8764ac12bba010)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
0aa40dc125 ref-manual: add OVERLAYFS_ETC_EXPOSE_LOWER
New variable in 4.1.

(From yocto-docs rev: a410d4b7a5cd38badc318508f003e3151846776e)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
d73883dfef ref-manual: add previous overlayfs-etc variables
These were supported in releases prior to 4.1.

(From yocto-docs rev: 86f367fc9946904b5056fb86fb2cc339a0f96b0a)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
4ce28144c5 ref-manual: add serial-autologin-root to IMAGE_FEATURES documentation
New IMAGE_FEATURES item in 4.1.

(From yocto-docs rev: 0fdd9079743a4a4205afcaaaa783af855ce5f21f)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
1568e8a1f6 ref-manual: add missing features
Add missing IMAGE_FEATURES, DISTRO_FEATURES and MACHINE_FEATURES items.
Additionally, add a note that DISTRO_FEATURES doesn't have any impact on
the kernel configuration so that users are aware they have to take care
of that as well. (I thought the same was true of MACHINE_FEATURES, but
it seems we have a couple of isolated cases where that will adjust the
kernel configuration - few enough that I suspect they might have slipped
in and thus probably shouldn't be documented yet.)

(From yocto-docs rev: 488a5896feefd6d0dbc197e7cc431b4d23085104)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
7bf7115afa ref-manual: remove reference to largefile in DISTRO_FEATURES
This no longer does anything in 4.1.

(From yocto-docs rev: a288b422cf9753a393e0c6791292ac5dad2fe732)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
1bdb6457dd ref-manual: complementary package installation recommends
Add a note to the COMPLEMENTARY_GLOB variable glossary entry mentioning
that recommends aren't installed (since this seems to be the only place
that complementary package installation is really discussed). Also turn
the paragraph about globbing into a regular paragraph as I don't think
it should be called out in a note block.

(From yocto-docs rev: abc67b101b0821b174eb65bc13922a8bee1016eb)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
b1d1777865 Update documentation for classes split
* Make reference to meta/classes* instead of just meta/classes
* Update each reference to the path where the class has moved
* Add a brief explanation to the classes reference explaining the split
* Add a note to INHERIT, INHERIT_DISTRO, IMAGE_CLASSES and USER_CLASSES
  variable glossary entries mentioning where the specified classes must
  be located. I contemplated adding the same note to PACKAGE_CLASSES
  but decided against it, as it has a very specific usage and such a
  note might distract from the narrative of that entry.
* Also trim the IMAGE_CLASSES entry which was quite outdated.
* INHERIT += no longer works with testimage so drop the note about that

(From yocto-docs rev: e76bed00b452d3049f6c22afbfb980b557a141bd)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
c29eb10e31 ref-manual: remove reference to testimage-auto class
testimage-auto was removed in the thud release.

(From yocto-docs rev: 618351169c09470280aeee53a63aba88788efc4b)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
335a230a35 ref-manual: add MOUNT_BASE variable
New variable for 4.1.

(From yocto-docs rev: 91c6c3dcb36e52e276f000b0e60aba02d546e994)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
a9a00a6004 ref-manual: add KERNEL_DEPLOY_DEPEND
New variable in 4.1.

(From yocto-docs rev: efd1a6f5d13a031c0c093bbcfb4bcf935e37ed25)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
260d09106f ref-manual: add CVE_DB_UPDATE_INTERVAL
New variable in 4.1.

(From yocto-docs rev: 580e0f3b23ee3a553ffc797b97c5b146316e32e4)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
256dcac518 ref-manual: add FIT_PAD_ALG
New variable in 4.1.

(From yocto-docs rev: 78199299405ae0ed3da543773859dc6309144cf6)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
81f311e347 ref-manual: add CVE_CHECK_SHOW_WARNINGS
New variable in 4.1.

(From yocto-docs rev: ddf89c32f774bf6217c9bf02fa07603bf0fcfc4e)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
f4d633a7c2 ref-manual: update pypi documentation for CVE_PRODUCT default in 4.1
In 4.1 the pypi class has been updated to set a default CVE_PRODUCT
value.

(From yocto-docs rev: e4b25d6790c3966bad3c63818729c1baaf2b3ca9)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
af3beeecfb ref-manual: add pypi class
Add missing documentation for the pypi class.

(From yocto-docs rev: d387ca891ad3a7d00ec3cb5f994dc5832c885d54)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:57 +01:00
Paul Eggleton
9dd5d8d1ad ref-manual: add SDK_TOOLCHAIN_LANGS
New variable in 4.1.

(From yocto-docs rev: d8d9f9fb8b8acc47888cc61fa5565806b100eba4)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:56 +01:00
Paul Eggleton
c81fd60784 ref-manual: add DEV_PKG_DEPENDENCY
New variable in 4.1.

(From yocto-docs rev: 5be23dc56574697cf18cbc4f3b7130cefe84abfd)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:56 +01:00
Paul Eggleton
776ec078c4 ref-manual: add UBOOT_MKIMAGE_KERNEL_TYPE
New variable in 4.1.

(From yocto-docs rev: d79c1c29607bc3750bcb4e4c171593f4d7ac89cb)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:56 +01:00
Paul Eggleton
3dbc1e83f2 ref-manual: update buildpaths QA check documentation
The buildpaths QA check is now practically usable and enabled by
default, so update the comment and add a section with the warning
message since users may start seeing it in their builds.

(From yocto-docs rev: a14997e3b8576cd1a6e1c38d13b5b8e05ac03b88)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:56 +01:00
Paul Eggleton
32ba43072b ref-manual: add a note to ssh-server-dropbear feature
Add a note regarding the 4.1 change to add openssh-sftp-server as a
recommends from ssh-server-dropbear.

(From yocto-docs rev: dd4775d666ca8309ef029fd329a248397bcdedc6)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:56 +01:00
Paul Eggleton
e6fb7f27f6 ref-manual: document new github-releases class
Newly added class in 4.1.

(From yocto-docs rev: 391750e417d7a6b88222e03aa0a57ea87d9f618a)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:56 +01:00
Paul Eggleton
98893c4ddf ref-manual: correct default for BUILDHISTORY_COMMIT
The default changed to "1" back in 2017 (OE-Core revision
8018a2349b7ad5ab27731c93a49603adf5f72fc2). It seems I missed updating
the documentation to match.

(From yocto-docs rev: f5eb40a361661d8399c5bafeda3e76ed45d0e3fb)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:56 +01:00
Paul Eggleton
72b7a67743 ref-manual: add WATCHDOG_TIMEOUT to variable glossary
In 4.1 the WATCHDOG_TIMEOUT variable is now used in two places, so let's
actually document it.

(From yocto-docs rev: c8e51a968a5942cd153dd4bcf82ba9d1cc5340c0)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:56 +01:00
Paul Eggleton
8ba77dd403 ref-manual: expand documentation on image-buildinfo class
Expand the documentation on the image-buildinfo class, and add variable
glossary entries for IMAGE_BUILDINFO_FILE, IMAGE_BUILDINFO_VARS and
SDK_BUILDINFO_FILE (latter is new in 4.1).

(From yocto-docs rev: f69b2f614aaa56a19432538cb1adf33a441ea31d)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:56 +01:00
Paul Eggleton
500d5bc5c9 ref-manual: add DISABLE_STATIC
This was added all the way back in krogoth.

(From yocto-docs rev: 932870c5746718fb6ac3073bb4c79f4e085b089f)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:56 +01:00
Paul Eggleton
83495559d9 migration-general: add section on using buildhistory
Add a short section recommending the use of buildhistory to compare
the build output before and after migration.

(From yocto-docs rev: e4a83dadbda563e08302055538203c9b1ac9e992)

Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:56 +01:00
Michael Opdenacker
3e78c41c22 ref-manual/variables.rst: clarify sentence
(From yocto-docs rev: 9ecbf388bb0e5de4d4d65a3cf24caeb5d65f67dc)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-19 17:32:56 +01:00
Michael Opdenacker
3e5faccfaf ref-manual/faq.rst: update references to products built with OE / Yocto Project
(From yocto-docs rev: 42d3e26a0d04bc5951e640b471686f347dc9b74a)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
ba08db9817 overview-manual: concepts.rst: fix formating and add references
(From yocto-docs rev: c123815c664717e051456cc8142ba6d0b3369c62)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
f2803414b9 ref-manual: system-requirements: Ubuntu 22.04 now supported
Following its addition to meta-poky/conf/distro/poky.conf
https://git.yoctoproject.org/poky/commit/?id=7786b09212d6ab582db39d0d7d1a4209d36db2ba

(From yocto-docs rev: 393e9ae7c37544fd5c2841d99dd9bcd6db03dbbd)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
9d597ea614 ref-manual: tasks.rst: add reference to the "do_image_complete" task
(From yocto-docs rev: ebaf978cb7e682b724d9993cd0cd739ecb1c52b5)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Reported-by: Quentin Schulz <foss@0leil.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
4d2159d107 ref-manual: tasks.rst: add reference to the "do_validate_branches" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: abda9c0ee2835f9fdca54d7770678b0188c68e17)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
623720dcf4 migration-guides: add reference to the "do_shared_workdir" task
(From yocto-docs rev: a549b39a56c69beecd309ae0621ca673537a467e)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
e95e686e0c ref-manual: tasks.rst: add reference to the "do_kernel_metadata" task
(From yocto-docs rev: 85c12756a3e0fefdb5b5aec3ee317a6c0e4f0030)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
5f5d993bae manuals: add references to the "do_kernel_configme" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: f926e67d5c7ff4475e24ee7dd4f6c4b3ba7e9896)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
3784c57c04 manuals: add reference to the "do_kernel_configcheck" task
(From yocto-docs rev: 8356996e66c4a45f9f15b30950c6c61a0d50c2c9)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
c4e05c5223 ref-manual: tasks.rst: add reference to the "do_kernel_checkout" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: d45cffba8995b5a76a495f73e46852696a3bf645)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
40b7725212 manuals: add references to the "do_rootfs" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: 926c836e5184243fb1aee113962e11c01f0297ee)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
b42af6aa4a manuals: add references to the "do_bundle_initramfs" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: 84c024455a36f4b40cd8401715f30b0af74af8a7)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
6660c0603a dev-manual: common-tasks.rst: add reference to "do_listtasks" task
(From yocto-docs rev: 4352e14f82a45444acb2d8df11552b2265471ab1)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
ba478645a3 manuals: add references to the "do_devshell" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: 53141101fc1a8dc8b4007adcded3c7c6b9738f48)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
2aae1accee ref-manual: tasks.rst: add references to the "do_cleansstate" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: 2d48187906e289caf33bf53e6ddecfe56f6fd74b)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
66a523d7e7 manuals: add references to the "do_cleanall" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: 4c815875b7c716f421bbcd11ce26703867f11741)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
c99fdab612 dev-manual: common-tasks.rst: add reference to "do_clean" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: 68261dc8b8c26df7aad19b37c2300ec5174525c9)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
c9c7ace795 manuals: add references to the "do_unpack" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: 1ca57f8ec322d5777bf31829e659d62e82986be1)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
a8b6712dfd manuals: add references to "do_populate_sysroot" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: a010e2eafa6754c46faac6f6dfd02dc6152d274f)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
8f39d1812b overview-manual: concepts.rst: add reference to "do_populate_sdk_ext" task
(From yocto-docs rev: 763eb0b85052f2013b481017d432fc95ae5869a5)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
97495b4c89 manuals: add reference to the "do_populate_sdk" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: 6d262b676ed1e8b6b404050dad20e85e7ceb28c2)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
2102333157 ref-manual: variables.rst: add reference to "do_populate_lic" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: b58444010ebe359d11884ad4bde505ccd1813e79)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
ec31647110 manuals: add references to "do_package_write_*" tasks
Using a reference to "do_package_write_deb", the first entry
in the list.

[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: 237cebcfa6215d75bbe28df677f18ebf7e1bb4f6)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:26 +01:00
Michael Opdenacker
a6a7676910 manuals: add references to the "do_patch" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: 1e38ceafb25aac13bb9dd45626fd39ad1b68852d)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:25 +01:00
Michael Opdenacker
020c44eb3b overview-manual: concepts.rst: add reference to "do_packagedata" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: d2cc5f2f667b357c770eeb69a7e8b6fef4f9c447)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:25 +01:00
Michael Opdenacker
67a72fc3f7 manuals: add references to the "do_package_qa" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: af27370fd4ffd0e0455187aa9fc5349d39403ae7)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:25 +01:00
Michael Opdenacker
b3dc55b051 manuals: add references to the "do_package" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: 179139e6710f6dde0de25200c372705ed8ef13bc)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:25 +01:00
Michael Opdenacker
3c6b2798a0 manuals: add references to the "do_image" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: 2f53d0a52a48f828f00d3bc3f887fd537692a256)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:25 +01:00
Michael Opdenacker
0e8d0ecc6c manuals: add references to the "do_deploy" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: b607a0578e8edd3e4ee013b4438481cb82bc106e)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:25 +01:00
Michael Opdenacker
6ade5d2d0e manuals: add reference to the "do_compile" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: e88f11002032e30bbe2dd0049e307a431a70aaef)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:25 +01:00
Michael Opdenacker
5d1e8104cd manuals: add reference to "do_configure" task
[YOCTO #14508]
Reported-by: Quentin Schulz <foss@0leil.net>
(From yocto-docs rev: 5ddc1a40c9004d814472bdd385f456afa7a9c4e3)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:25 +01:00
Michael Opdenacker
edaa121c7b manuals: add references to the "do_build" task
[YOCTO #14508]
(From yocto-docs rev: c8efd2eeb329344c48935f8998e9a689d66348ca)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Reported-by: Quentin Schulz <foss@0leil.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:25 +01:00
Michael Opdenacker
9fece9c361 manuals: add reference to the "do_install" task
[YOCTO #14508]
(From yocto-docs rev: 933ad27b81dfc4a28e7c48ca7bb2d1363e8c037f)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Reported-by: Quentin Schulz <foss@0leil.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:25 +01:00
Michael Opdenacker
84251f8d24 manuals: add references to the "do_fetch" task
[YOCTO #14508]
(From yocto-docs rev: 17f2041647010d885f18f889c740588586c60d3a)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Reported-by: Quentin Schulz <foss@0leil.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:25 +01:00
Lee Chee Yang
104f20717c migration guides: add release notes for 4.0.4
(From yocto-docs rev: c55f43b954bb1704d4fce5fd573017091df336f7)

Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:25 +01:00
Michael Opdenacker
9dbd27a48a manuals: improve initramfs details
- Create a new entry in the glossary
- Add implementation details
- Replace the mention of "init ramdisk" by "initramfs¨
  whenever possible
- Remove obsolete and duplicate information
- Fix spacing issues in the Sphinx code

(From yocto-docs rev: 952c7e6dee49532705b2c162f4728e635c38df3f)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:25 +01:00
Johan Korsnes
c3c7344826 migration guides: 3.4: remove spurious space in example
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Cc: Ross Burton <ross.burton@arm.com>
(From yocto-docs rev: 1942514a3f5c1a9719aa21c143088e00074a6480)

Signed-off-by: Johan Korsnes <johan.korsnes@remarkable.no>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Reviewed-by: Quentin Schulz <foss+yocto@0leil.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-10-07 10:54:25 +01:00
171 changed files with 4941 additions and 1849 deletions

View File

@@ -330,7 +330,8 @@ Removal (Override Style Syntax)
You can remove values from lists using the removal override style
syntax. Specifying a value for removal causes all occurrences of that
value to be removed from the variable.
value to be removed from the variable. Unlike ":append" and ":prepend",
there is no need to add a leading or trailing space to the value.
When you use this syntax, BitBake expects one or more strings.
Surrounding spaces and spacing are preserved. Here is an example::
@@ -421,6 +422,12 @@ documentation to a BitBake variable as follows::
CACHE[doc] = "The directory holding the cache of the metadata."
.. note::
Variable flag names starting with an underscore (``_``) character
are allowed but are ignored by ``d.getVarFlags("VAR")``
in Python code. Such flag names are used internally by BitBake.
Inline Python Variable Expansion
--------------------------------

View File

@@ -484,29 +484,55 @@ overview of their function and contents.
for it to work.
:term:`BB_PRESSURE_MAX_CPU`
The threshold for maximum CPU pressure before BitBake prevents the
scheduling of new tasks. Once the :term:`BB_PRESSURE_MAX_CPU` threshold
is exceeded, new tasks are not started until the pressure subsides to
below the threshold. If :term:`BB_PRESSURE_MAX_CPU` is not set, CPU
pressure is not monitored. A threshold can be set in ``conf/local.conf``
as::
Specifies a maximum CPU pressure threshold, above which BitBake's
scheduler will not start new tasks (providing there is at least
one active task). If no value is set, CPU pressure is not
monitored when starting tasks.
The pressure data is calculated based upon what Linux kernels since
version 4.20 expose under ``/proc/pressure``. The threshold represents
the difference in "total" pressure from the previous second. The
minimum value is 1.0 (extremely slow builds) and the maximum is
1000000 (a pressure value unlikely to ever be reached).
This threshold can be set in ``conf/local.conf`` as::
BB_PRESSURE_MAX_CPU = "500"
:term:`BB_PRESSURE_MAX_IO`
The threshold for maximum IO pressure experienced before BitBake
prevents the scheduling of new tasks. The IO pressure is regulated in the
same way as :term:`BB_PRESSURE_MAX_CPU`. At this point in time,
experiments show that IO pressure tends to be short-lived and regulating
just the CPU can help to reduce it.
Specifies a maximum I/O pressure threshold, above which BitBake's
scheduler will not start new tasks (providing there is at least
one active task). If no value is set, I/O pressure is not
monitored when starting tasks.
The pressure data is calculated based upon what Linux kernels since
version 4.20 expose under ``/proc/pressure``. The threshold represents
the difference in "total" pressure from the previous second. The
minimum value is 1.0 (extremely slow builds) and the maximum is
1000000 (a pressure value unlikely to ever be reached).
At this point in time, experiments show that IO pressure tends to
be short-lived and regulating just the CPU with
:term:`BB_PRESSURE_MAX_CPU` can help to reduce it.
:term:`BB_PRESSURE_MAX_MEMORY`
The threshold for maximum memory pressure experienced before BitBake
prevents the scheduling of new tasks. The memory pressure is regulated in
the same way as :term:`BB_PRESSURE_MAX_CPU`. Note that any memory
pressure indicates that a system is being pushed beyond its capacity. At
this point in time, experiments show that memory pressure tends to be
short-lived and regulating just the CPU can help to reduce it.
Specifies a maximum memory pressure threshold, above which BitBake's
scheduler will not start new tasks (providing there is at least
one active task). If no value is set, memory pressure is not
monitored when starting tasks.
The pressure data is calculated based upon what Linux kernels since
version 4.20 expose under ``/proc/pressure``. The threshold represents
the difference in "total" pressure from the previous second. The
minimum value is 1.0 (extremely slow builds) and the maximum is
1000000 (a pressure value unlikely to ever be reached).
Memory pressure is experienced when time is spent swapping,
refaulting pages from the page cache or performing direct reclaim.
This is why memory pressure is rarely seen, but setting this variable
might be useful as a last resort to prevent OOM errors if they are
occurring during builds.
:term:`BB_RUNFMT`
Specifies the name of the executable script files (i.e. run files)

View File

@@ -42,7 +42,7 @@ class AsyncServerConnection(object):
# Read protocol and version
client_protocol = await self.reader.readline()
if client_protocol is None:
if not client_protocol:
return
(client_proto_name, client_proto_version) = client_protocol.decode('utf-8').rstrip().split()
@@ -59,7 +59,7 @@ class AsyncServerConnection(object):
# an empty line to signal the end of the headers
while True:
line = await self.reader.readline()
if line is None:
if not line:
return
line = line.decode('utf-8').rstrip()

View File

@@ -243,7 +243,7 @@ class Git(FetchMethod):
for name in ud.names:
ud.unresolvedrev[name] = 'HEAD'
ud.basecmd = d.getVar("FETCHCMD_git") or "git -c core.fsyncobjectfiles=0 -c gc.autoDetach=false -c core.pager=cat"
ud.basecmd = d.getVar("FETCHCMD_git") or "git -c gc.autoDetach=false -c core.pager=cat"
write_tarballs = d.getVar("BB_GENERATE_MIRROR_TARBALLS") or "0"
ud.write_tarballs = write_tarballs != "0" or ud.rebaseable

View File

@@ -1331,12 +1331,14 @@ class URLHandle(unittest.TestCase):
"cvs://anoncvs:anonymous@cvs.handhelds.org/cvs;tag=V0-99-81;module=familiar/dist/ipkg" : ('cvs', 'cvs.handhelds.org', '/cvs', 'anoncvs', 'anonymous', collections.OrderedDict([('tag', 'V0-99-81'), ('module', 'familiar/dist/ipkg')])),
"git://git.openembedded.org/bitbake;branch=@foo" : ('git', 'git.openembedded.org', '/bitbake', '', '', {'branch': '@foo'}),
"file://somelocation;someparam=1": ('file', '', 'somelocation', '', '', {'someparam': '1'}),
r'git://s.o-me_ONE:!#$%^&*()-_={}[]\|:?,.<>~`@git.openembedded.org/bitbake;branch=main': ('git', 'git.openembedded.org', '/bitbake', 's.o-me_ONE', r'!#$%^&*()-_={}[]\|:?,.<>~`', {'branch': 'main'}),
}
# we require a pathname to encodeurl but users can still pass such urls to
# decodeurl and we need to handle them
decodedata = datatable.copy()
decodedata.update({
"http://somesite.net;someparam=1": ('http', 'somesite.net', '/', '', '', {'someparam': '1'}),
"npmsw://some.registry.url;package=@pkg;version=latest": ('npmsw', 'some.registry.url', '/', '', '', {'package': '@pkg', 'version': 'latest'}),
})
def test_decodeurl(self):
@@ -1869,7 +1871,7 @@ class GitShallowTest(FetcherTest):
self.add_empty_file('bsub', cwd=smdir)
self.git('submodule init', cwd=self.srcdir)
self.git('submodule add file://%s' % smdir, cwd=self.srcdir)
self.git('-c protocol.file.allow=always submodule add file://%s' % smdir, cwd=self.srcdir)
self.git('submodule update', cwd=self.srcdir)
self.git('commit -m submodule -a', cwd=self.srcdir)
@@ -1899,7 +1901,7 @@ class GitShallowTest(FetcherTest):
self.add_empty_file('bsub', cwd=smdir)
self.git('submodule init', cwd=self.srcdir)
self.git('submodule add file://%s' % smdir, cwd=self.srcdir)
self.git('-c protocol.file.allow=always submodule add file://%s' % smdir, cwd=self.srcdir)
self.git('submodule update', cwd=self.srcdir)
self.git('commit -m submodule -a', cwd=self.srcdir)

View File

@@ -547,7 +547,12 @@ def md5_file(filename):
Return the hex string representation of the MD5 checksum of filename.
"""
import hashlib
return _hasher(hashlib.new('MD5', usedforsecurity=False), filename)
try:
sig = hashlib.new('MD5', usedforsecurity=False)
except TypeError:
# Some configurations don't appear to support two arguments
sig = hashlib.new('MD5')
return _hasher(sig, filename)
def sha256_file(filename):
"""

View File

@@ -49,6 +49,31 @@ class LayerIndexPlugin(ActionPlugin):
else:
logger.plain("Repository %s needs to be fetched" % url)
return subdir, layername, layerdir
elif os.path.exists(repodir) and branch:
"""
If the repo is already cloned, ensure it is on the correct branch,
switching branches if necessary and possible.
"""
base_cmd = ['git', '--git-dir=%s/.git' % repodir, '--work-tree=%s' % repodir]
cmd = base_cmd + ['branch']
completed_proc = subprocess.run(cmd, text=True, capture_output=True)
if completed_proc.returncode:
logger.error("Unable to validate repo %s (%s)" % (repodir, stderr))
return None, None, None
else:
if branch != completed_proc.stdout[2:-1]:
cmd = base_cmd + ['status', '--short']
completed_proc = subprocess.run(cmd, text=True, capture_output=True)
if completed_proc.stdout.count('\n') != 0:
logger.warning("There are uncommitted changes in repo %s" % repodir)
cmd = base_cmd + ['checkout', branch]
completed_proc = subprocess.run(cmd, text=True, capture_output=True)
if completed_proc.returncode:
# Could be due to original shallow clone on a different branch for example
logger.error("Unable to automatically switch %s to desired branch '%s' (%s)"
% (repodir, branch, completed_proc.stderr))
return None, None, None
return subdir, layername, layerdir
elif os.path.exists(layerdir):
return subdir, layername, layerdir
else:

View File

@@ -2798,7 +2798,14 @@ class ParserReflect(object):
def signature(self):
try:
import hashlib
except ImportError:
raise RuntimeError("Unable to import hashlib")
try:
sig = hashlib.new('MD5', usedforsecurity=False)
except TypeError:
# Some configurations don't appear to support two arguments
sig = hashlib.new('MD5')
try:
if self.start:
sig.update(self.start.encode('latin-1'))
if self.prec:

View File

@@ -25,18 +25,11 @@ build a reference embedded OS called Poky.
in the Yocto Project Development Tasks Manual for more
information.
- You may use Windows Subsystem For Linux v2 to set up a build host
using Windows 10.
.. note::
The Yocto Project is not compatible with WSLv1, it is
compatible but not officially supported nor validated with
WSLv2, if you still decide to use WSL please upgrade to WSLv2.
See the :ref:`dev-manual/start:setting up to use windows
subsystem for linux (wslv2)` section in the Yocto Project Development
Tasks Manual for more information.
- You may use version 2 of Windows Subsystem For Linux (WSL 2) to set
up a build host using Windows 10 or later, Windows Server 2019 or later.
See the :ref:`dev-manual/start:setting up to use windows subsystem for
linux (wsl 2)` section in the Yocto Project Development Tasks Manual
for more information.
If you want more conceptual or background information on the Yocto
Project, see the :doc:`/overview-manual/index`.

View File

@@ -973,7 +973,7 @@ a recipe and using :term:`EXTRA_IMAGE_FEATURES` from within your
:term:`Build Directory`.
To understand how these features work, the best reference is
:ref:`meta/classes/image.bbclass <ref-classes-image>`.
:ref:`meta/classes-recipe/image.bbclass <ref-classes-image>`.
This class lists out the available
:term:`IMAGE_FEATURES` of which most map to package groups while some, such
as ``debug-tweaks`` and ``read-only-rootfs``, resolve as general
@@ -1731,7 +1731,7 @@ your software is built:
If you need to install one or more custom CMake toolchain files
that are supplied by the application you are building, install the
files to ``${D}${datadir}/cmake/Modules`` during ``do_install``.
files to ``${D}${datadir}/cmake/Modules`` during :ref:`ref-tasks-install`.
- *Other:* If your source files do not have a ``configure.ac`` or
``CMakeLists.txt`` file, then your software is built using some
@@ -1826,8 +1826,8 @@ out-of-tree modules. Your recipe will also need the following::
Compilation
-----------
During a build, the ``do_compile`` task happens after source is fetched,
unpacked, and configured. If the recipe passes through ``do_compile``
During a build, the :ref:`ref-tasks-compile` task happens after source is fetched,
unpacked, and configured. If the recipe passes through :ref:`ref-tasks-compile`
successfully, nothing needs to be done.
However, if the compile step fails, you need to diagnose the failure.
@@ -1888,7 +1888,7 @@ Here are some common issues that cause failures.
Installing
----------
During ``do_install``, the task copies the built files along with their
During :ref:`ref-tasks-install`, the task copies the built files along with their
hierarchy to locations that would mirror their locations on the target
device. The installation process copies files from the
``${``\ :term:`S`\ ``}``,
@@ -1906,14 +1906,14 @@ the software being built:
- *Autotools and CMake:* If the software your recipe is building uses
Autotools or CMake, the OpenEmbedded build system understands how to
install the software. Consequently, you do not have to have a
``do_install`` task as part of your recipe. You just need to make
:ref:`ref-tasks-install` task as part of your recipe. You just need to make
sure the install portion of the build completes with no issues.
However, if you wish to install additional files not already being
installed by ``make install``, you should do this using a
``do_install:append`` function using the install command as described
in the "Manual" bulleted item later in this list.
- *Other (using* ``make install``\ *)*: You need to define a ``do_install``
- *Other (using* ``make install``\ *)*: You need to define a :ref:`ref-tasks-install`
function in your recipe. The function should call
``oe_runmake install`` and will likely need to pass in the
destination directory as well. How you pass that path is dependent on
@@ -1923,7 +1923,7 @@ the software being built:
For an example recipe using ``make install``, see the
":ref:`dev-manual/common-tasks:makefile-based package`" section.
- *Manual:* You need to define a ``do_install`` function in your
- *Manual:* You need to define a :ref:`ref-tasks-install` function in your
recipe. The function must first use ``install -d`` to create the
directories under
``${``\ :term:`D`\ ``}``. Once the
@@ -1946,10 +1946,10 @@ installed correctly.
might need to replace hard-coded paths in an initscript with
values of variables provided by the build system, such as
replacing ``/usr/bin/`` with ``${bindir}``. If you do perform such
modifications during ``do_install``, be sure to modify the
modifications during :ref:`ref-tasks-install`, be sure to modify the
destination file after copying rather than before copying.
Modifying after copying ensures that the build system can
re-execute ``do_install`` if needed.
re-execute :ref:`ref-tasks-install` if needed.
- ``oe_runmake install``, which can be run directly or can be run
indirectly by the
@@ -1958,7 +1958,7 @@ installed correctly.
runs ``make install`` in parallel. Sometimes, a Makefile can have
missing dependencies between targets that can result in race
conditions. If you experience intermittent failures during
``do_install``, you might be able to work around them by disabling
:ref:`ref-tasks-install`, you might be able to work around them by disabling
parallel Makefile installs by adding the following to the recipe::
PARALLEL_MAKEINST = ""
@@ -1980,7 +1980,7 @@ additional definitions in your recipe.
If you are adding services and the service initialization script or the
service file itself is not installed, you must provide for that
installation in your recipe using a ``do_install:append`` function. If
your recipe already has a ``do_install`` function, update the function
your recipe already has a :ref:`ref-tasks-install` function, update the function
near its end rather than adding an additional ``do_install:append``
function.
@@ -2028,10 +2028,10 @@ Successful packaging is a combination of automated processes performed
by the OpenEmbedded build system and some specific steps you need to
take. The following list describes the process:
- *Splitting Files*: The ``do_package`` task splits the files produced
- *Splitting Files*: The :ref:`ref-tasks-package` task splits the files produced
by the recipe into logical components. Even software that produces a
single binary might still have debug symbols, documentation, and
other logical components that should be split out. The ``do_package``
other logical components that should be split out. The :ref:`ref-tasks-package`
task ensures that files are split up and packaged correctly.
- *Running QA Checks*: The
@@ -2124,7 +2124,7 @@ removed later when a recipe is either modified or removed. Thus, the
sysroot is able to remain free from stale files.
A subset of the files installed by the :ref:`ref-tasks-install` task are
used by the :ref:`ref-tasks-populate_sysroot` task as defined by the the
used by the :ref:`ref-tasks-populate_sysroot` task as defined by the
:term:`SYSROOT_DIRS` variable to automatically populate the sysroot. It
is possible to modify the list of directories that populate the sysroot.
The following example shows how you could add the ``/opt`` directory to
@@ -2337,7 +2337,7 @@ Single .c File Package (Hello World!)
Building an application from a single file that is stored locally (e.g.
under ``files``) requires a recipe that has the file listed in the
:term:`SRC_URI` variable. Additionally, you need to manually write the
``do_compile`` and ``do_install`` tasks. The :term:`S` variable defines the
:ref:`ref-tasks-compile` and :ref:`ref-tasks-install` tasks. The :term:`S` variable defines the
directory containing the source code, which is set to
:term:`WORKDIR` in this case --- the
directory BitBake uses for the build.
@@ -2401,14 +2401,14 @@ Makefile-Based Package
Applications that use GNU ``make`` also require a recipe that has the
source archive listed in :term:`SRC_URI`. You do not need to add a
``do_compile`` step since by default BitBake starts the ``make`` command
:ref:`ref-tasks-compile` step since by default BitBake starts the ``make`` command
to compile the application. If you need additional ``make`` options, you
should store them in the
:term:`EXTRA_OEMAKE` or
:term:`PACKAGECONFIG_CONFARGS`
variables. BitBake passes these options into the GNU ``make``
invocation. Note that a ``do_install`` task is still required.
Otherwise, BitBake runs an empty ``do_install`` task by default.
invocation. Note that a :ref:`ref-tasks-install` task is still required.
Otherwise, BitBake runs an empty :ref:`ref-tasks-install` task by default.
Some applications might require extra parameters to be passed to the
compiler. For example, the application might need an additional header
@@ -2551,7 +2551,7 @@ doing the following:
``${``\ :term:`S`\ ``}``.
If ``${S}`` might contain a Makefile, or if you inherit some class
that replaces ``do_configure`` and ``do_compile`` with custom
that replaces :ref:`ref-tasks-configure` and :ref:`ref-tasks-compile` with custom
versions, then you can use the
``[``\ :ref:`noexec <bitbake-user-manual/bitbake-user-manual-metadata:variable flags>`\ ``]``
flag to turn the tasks into no-ops, as follows::
@@ -2567,7 +2567,7 @@ doing the following:
:ref:`ref-tasks-patch` tasks to the
:ref:`ref-tasks-install` task.
- Make sure your ``do_install`` task installs the binaries
- Make sure your :ref:`ref-tasks-install` task installs the binaries
appropriately.
- Ensure that you set up :term:`FILES`
@@ -2881,7 +2881,7 @@ you can use as references.
If you are creating a new kernel recipe, normal recipe-writing rules
apply for setting up a :term:`SRC_URI`. Thus, you need to specify any
necessary patches and set :term:`S` to point at the source code. You need to
create a ``do_configure`` task that configures the unpacked kernel with
create a :ref:`ref-tasks-configure` task that configures the unpacked kernel with
a ``defconfig`` file. You can do this by using a ``make defconfig``
command or, more commonly, by copying in a suitable ``defconfig`` file
and then running ``make oldconfig``. By making use of ``inherit kernel``
@@ -3048,7 +3048,7 @@ The following steps describe how to set up the AUH utility:
your build directory.
- If you want to enable testing through the
:ref:`testimage <ref-classes-testimage*>`
:ref:`testimage <ref-classes-testimage>`
class, which is optional, you need to have the following set in
your ``conf/local.conf`` file::
@@ -3446,7 +3446,7 @@ Follow these general steps:
you added to the patch.
6. *Test Your Changes:* Once you have modified the source code, the
easiest way to test your changes is by calling the ``do_compile``
easiest way to test your changes is by calling the :ref:`ref-tasks-compile`
task as shown in the following example::
$ bitbake -c compile -f package
@@ -3458,7 +3458,7 @@ Follow these general steps:
.. note::
All the modifications you make to the temporary source code disappear
once you run the ``do_clean`` or ``do_cleanall`` tasks using BitBake
once you run the :ref:`ref-tasks-clean` or :ref:`ref-tasks-cleanall` tasks using BitBake
(i.e. ``bitbake -c clean package`` and ``bitbake -c cleanall package``).
Modifications will also disappear if you use the ``rm_work`` feature as
described in the
@@ -3853,8 +3853,8 @@ to be added to the recipe that builds the ``core-image-sato`` image::
do_image[mcdepends] = "mc:x86:arm:core-image-minimal:do_rootfs"
In this example, the `from_multiconfig` is "x86". The `to_multiconfig` is "arm". The
task on which the ``do_image`` task in the recipe depends is the
``do_rootfs`` task from the ``core-image-minimal`` recipe associated
task on which the :ref:`ref-tasks-image` task in the recipe depends is the
:ref:`ref-tasks-rootfs` task from the ``core-image-minimal`` recipe associated
with the "arm" multiconfig.
Once you set up this dependency, you can build the "x86" multiconfig
@@ -3864,7 +3864,7 @@ using a BitBake command as follows::
This command executes all the tasks needed to create the
``core-image-sato`` image for the "x86" multiconfig. Because of the
dependency, BitBake also executes through the ``do_rootfs`` task for the
dependency, BitBake also executes through the :ref:`ref-tasks-rootfs` task for the
"arm" multiconfig build.
Having a recipe depend on the root filesystem of another build might not
@@ -3882,99 +3882,59 @@ and have separate configuration files, BitBake places the artifacts for
each build in the respective temporary build directories (i.e.
:term:`TMPDIR`).
Building an Initial RAM Filesystem (initramfs) Image
Building an Initial RAM Filesystem (Initramfs) Image
----------------------------------------------------
An initial RAM filesystem (initramfs) image provides a temporary root
filesystem used for early system initialization (e.g. loading of modules
needed to locate and mount the "real" root filesystem).
An initial RAM filesystem (:term:`Initramfs`) image provides a temporary root
filesystem used for early system initialization, typically providing tools and
loading modules needed to locate and mount the final root filesystem.
.. note::
Follow these steps to create an :term:`Initramfs` image:
The initramfs image is the successor of initial RAM disk (initrd). It
is a "copy in and out" (cpio) archive of the initial filesystem that
gets loaded into memory during the Linux startup process. Because
Linux uses the contents of the archive during initialization, the
initramfs image needs to contain all of the device drivers and tools
needed to mount the final root filesystem.
Follow these steps to create an initramfs image:
1. *Create the initramfs Image Recipe:* You can reference the
1. *Create the Initramfs Image Recipe:* You can reference the
``core-image-minimal-initramfs.bb`` recipe found in the
``meta/recipes-core`` directory of the :term:`Source Directory`
as an example
from which to work.
as an example from which to work.
2. *Decide if You Need to Bundle the initramfs Image Into the Kernel
Image:* If you want the initramfs image that is built to be bundled
in with the kernel image, set the
:term:`INITRAMFS_IMAGE_BUNDLE`
variable to "1" in your ``local.conf`` configuration file and set the
:term:`INITRAMFS_IMAGE`
variable in the recipe that builds the kernel image.
2. *Decide if You Need to Bundle the Initramfs Image Into the Kernel
Image:* If you want the :term:`Initramfs` image that is built to be bundled
in with the kernel image, set the :term:`INITRAMFS_IMAGE_BUNDLE`
variable to ``"1"`` in your ``local.conf`` configuration file and set the
:term:`INITRAMFS_IMAGE` variable in the recipe that builds the kernel image.
.. note::
It is recommended that you bundle the initramfs image with the
kernel image to avoid circular dependencies between the kernel
recipe and the initramfs recipe should the initramfs image include
kernel modules.
Setting the :term:`INITRAMFS_IMAGE_BUNDLE` flag causes the initramfs
Setting the :term:`INITRAMFS_IMAGE_BUNDLE` flag causes the :term:`Initramfs`
image to be unpacked into the ``${B}/usr/`` directory. The unpacked
initramfs image is then passed to the kernel's ``Makefile`` using the
:term:`CONFIG_INITRAMFS_SOURCE`
variable, allowing the initramfs image to be built into the kernel
normally.
:term:`Initramfs` image is then passed to the kernel's ``Makefile`` using the
:term:`CONFIG_INITRAMFS_SOURCE` variable, allowing the :term:`Initramfs`
image to be built into the kernel normally.
.. note::
3. *Optionally Add Items to the Initramfs Image Through the Initramfs
Image Recipe:* If you add items to the :term:`Initramfs` image by way of its
recipe, you should use :term:`PACKAGE_INSTALL` rather than
:term:`IMAGE_INSTALL`. :term:`PACKAGE_INSTALL` gives more direct control of
what is added to the image as compared to the defaults you might not
necessarily want that are set by the :ref:`image <ref-classes-image>`
or :ref:`core-image <ref-classes-core-image>` classes.
Bundling the initramfs with the kernel conflates the code in the initramfs
with the GPLv2 licensed Linux kernel binary. Thus only GPLv2 compatible
software may be part of a bundled initramfs.
.. note::
If you choose to not bundle the initramfs image with the kernel
image, you are essentially using an
`Initial RAM Disk (initrd) <https://en.wikipedia.org/wiki/Initrd>`__.
Creating an initrd is handled primarily through the :term:`INITRD_IMAGE`,
``INITRD_LIVE``, and ``INITRD_IMAGE_LIVE`` variables. For more
information, see the :ref:`ref-classes-image-live` file.
3. *Optionally Add Items to the initramfs Image Through the initramfs
Image Recipe:* If you add items to the initramfs image by way of its
recipe, you should use
:term:`PACKAGE_INSTALL`
rather than
:term:`IMAGE_INSTALL`.
:term:`PACKAGE_INSTALL` gives more direct control of what is added to the
image as compared to the defaults you might not necessarily want that
are set by the :ref:`image <ref-classes-image>`
or :ref:`core-image <ref-classes-core-image>`
classes.
4. *Build the Kernel Image and the initramfs Image:* Build your kernel
image using BitBake. Because the initramfs image recipe is a
dependency of the kernel image, the initramfs image is built as well
4. *Build the Kernel Image and the Initramfs Image:* Build your kernel
image using BitBake. Because the :term:`Initramfs` image recipe is a
dependency of the kernel image, the :term:`Initramfs` image is built as well
and bundled with the kernel image if you used the
:term:`INITRAMFS_IMAGE_BUNDLE`
variable described earlier.
:term:`INITRAMFS_IMAGE_BUNDLE` variable described earlier.
Bundling an Initramfs Image From a Separate Multiconfig
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
There may be a case where we want to build an initramfs image which does not
There may be a case where we want to build an :term:`Initramfs` image which does not
inherit the same distro policy as our main image, for example, we may want
our main image to use ``TCLIBC="glibc"``, but to use ``TCLIBC="musl"`` in our initramfs
our main image to use ``TCLIBC="glibc"``, but to use ``TCLIBC="musl"`` in our :term:`Initramfs`
image to keep a smaller footprint. However, by performing the steps mentioned
above the initramfs image will inherit ``TCLIBC="glibc"`` without allowing us
above the :term:`Initramfs` image will inherit ``TCLIBC="glibc"`` without allowing us
to override it.
To achieve this, you need to perform some additional steps:
1. *Create a multiconfig for your initramfs image:* You can perform the steps
1. *Create a multiconfig for your Initramfs image:* You can perform the steps
on ":ref:`dev-manual/common-tasks:building images for multiple targets using multiple configurations`" to create a separate multiconfig.
For the sake of simplicity let's assume such multiconfig is called: ``initramfscfg.conf`` and
contains the variables::
@@ -3982,7 +3942,7 @@ To achieve this, you need to perform some additional steps:
TMPDIR="${TOPDIR}/tmp-initramfscfg"
TCLIBC="musl"
2. *Set additional initramfs variables on your main configuration:*
2. *Set additional Initramfs variables on your main configuration:*
Additionally, on your main configuration (``local.conf``) you need to set the
variables::
@@ -3995,9 +3955,9 @@ To achieve this, you need to perform some additional steps:
buildsystem know where the :term:`INITRAMFS_IMAGE` will be located.
Building a system with such configuration will build the kernel using the
main configuration but the ``do_bundle_initramfs`` task will grab the
main configuration but the :ref:`ref-tasks-bundle_initramfs` task will grab the
selected :term:`INITRAMFS_IMAGE` from :term:`INITRAMFS_DEPLOY_DIR_IMAGE`
instead, resulting in a musl based initramfs image bundled in the kernel
instead, resulting in a musl based :term:`Initramfs` image bundled in the kernel
but a glibc based main image.
The same is applicable to avoid inheriting :term:`DISTRO_FEATURES` on :term:`INITRAMFS_IMAGE`
@@ -4171,7 +4131,7 @@ file::
Finally, you should consider exactly the type of root filesystem you
need to meet your needs while also reducing its size. For example,
consider ``cramfs``, ``squashfs``, ``ubifs``, ``ext2``, or an
``initramfs`` using ``initramfs``. Be aware that ``ext3`` requires a 1
:term:`Initramfs` using ``initramfs``. Be aware that ``ext3`` requires a 1
Mbyte journal. If you are okay with running read-only, you do not need
this journal.
@@ -4740,7 +4700,7 @@ the built library.
The :term:`PACKAGES` and
:term:`FILES:* <FILES>` variables in the
``meta/conf/bitbake.conf`` configuration file define how files installed
by the ``do_install`` task are packaged. By default, the :term:`PACKAGES`
by the :ref:`ref-tasks-install` task are packaged. By default, the :term:`PACKAGES`
variable includes ``${PN}-staticdev``, which represents all static
library files.
@@ -6902,7 +6862,7 @@ The previous example specifies a number of things in the call to
``do_split_packages``.
- A directory within the files installed by your recipe through
``do_install`` in which to search.
:ref:`ref-tasks-install` in which to search.
- A regular expression used to match module files in that directory. In
the example, note the parentheses () that mark the part of the
@@ -6929,7 +6889,7 @@ multiple times if you have more than one set of modules to package.
For more examples that show how to use ``do_split_packages``, see the
``connman.inc`` file in the ``meta/recipes-connectivity/connman/``
directory of the ``poky`` :ref:`source repository <overview-manual/development-environment:yocto project source repositories>`. You can
also find examples in ``meta/classes/kernel.bbclass``.
also find examples in ``meta/classes-recipe/kernel.bbclass``.
Following is a reference that shows ``do_split_packages`` mandatory and
optional arguments::
@@ -8481,7 +8441,7 @@ The following list shows the files produced for SDKs:
information.
- ``sstate-task-sizes.txt:`` A text file containing name-value pairs
with information about task group sizes (e.g. ``do_populate_sysroot``
with information about task group sizes (e.g. :ref:`ref-tasks-populate_sysroot`
tasks have a total size). The ``sstate-task-sizes.txt`` file exists
only when an extensible SDK is created.
@@ -8802,7 +8762,7 @@ perform a one-time setup of your controller image by doing the following:
- Installs normal linux utilities not BusyBox ones (e.g. ``bash``,
``coreutils``, ``tar``, ``gzip``, and ``kmod``).
- Uses a custom Initial RAM Disk (initramfs) image with a custom
- Uses a custom :term:`Initramfs` image with a custom
installer. A normal image that you can install usually creates a
single root filesystem partition. This image uses another installer that
creates a specific partition layout. Not all Board Support
@@ -8933,7 +8893,7 @@ You can start the tests automatically or manually:
- *Manually running tests:* To manually run the tests, first globally
inherit the
:ref:`testimage <ref-classes-testimage*>` class
:ref:`testimage <ref-classes-testimage>` class
by editing your ``local.conf`` file::
INHERIT += "testimage"
@@ -9081,7 +9041,7 @@ Class methods are as follows:
- *hasPackage(pkg):* Returns "True" if ``pkg`` is in the installed
package list of the image, which is based on the manifest file that
is generated during the ``do_rootfs`` task.
is generated during the :ref:`ref-tasks-rootfs` task.
- *hasFeature(feature):* Returns "True" if the feature is in
:term:`IMAGE_FEATURES` or
@@ -9633,11 +9593,11 @@ Running Specific Tasks
----------------------
Any given recipe consists of a set of tasks. The standard BitBake
behavior in most cases is: ``do_fetch``, ``do_unpack``, ``do_patch``,
``do_configure``, ``do_compile``, ``do_install``, ``do_package``,
``do_package_write_*``, and ``do_build``. The default task is
``do_build`` and any tasks on which it depends build first. Some tasks,
such as ``do_devshell``, are not part of the default build chain. If you
behavior in most cases is: :ref:`ref-tasks-fetch`, :ref:`ref-tasks-unpack`, :ref:`ref-tasks-patch`,
:ref:`ref-tasks-configure`, :ref:`ref-tasks-compile`, :ref:`ref-tasks-install`, :ref:`ref-tasks-package`,
:ref:`do_package_write_* <ref-tasks-package_write_deb>`, and :ref:`ref-tasks-build`. The default task is
:ref:`ref-tasks-build` and any tasks on which it depends build first. Some tasks,
such as :ref:`ref-tasks-devshell`, are not part of the default build chain. If you
wish to run a task that is not part of the default build chain, you can
use the ``-c`` option in BitBake. Here is an example::
@@ -9677,7 +9637,7 @@ The following example shows one way you can use the ``-f`` option::
This sequence first builds and then recompiles ``matchbox-desktop``. The
last command reruns all tasks (basically the packaging tasks) after the
compile. BitBake recognizes that the ``do_compile`` task was rerun and
compile. BitBake recognizes that the :ref:`ref-tasks-compile` task was rerun and
therefore understands that the other tasks also need to be run again.
Another, shorter way to rerun a task and all
@@ -9724,7 +9684,7 @@ task dependency mechanisms.
You can view a list of tasks in a given package by running the
``do_listtasks`` task as follows::
:ref:`ref-tasks-listtasks` task as follows::
$ bitbake matchbox-desktop -c listtasks

View File

@@ -123,9 +123,9 @@ available. Follow these general steps to run QEMU:
$ runqemu qemux86-64 core-image-minimal ext4
- This example specifies to boot an initial RAM disk image and to
enable audio in QEMU. For this case, ``runqemu`` set the internal
variable ``FSTYPE`` to "cpio.gz". Also, for audio to be enabled,
- This example specifies to boot an :term:`Initramfs` image and to
enable audio in QEMU. For this case, ``runqemu`` sets the internal
variable ``FSTYPE`` to ``cpio.gz``. Also, for audio to be enabled,
an appropriate driver must be installed (see the previous
description for the ``audio`` option for more information).
::
@@ -394,7 +394,7 @@ command line:
options are basically identical. If you do not provide a MACHINE
option, ``runqemu`` tries to determine it based on other options.
- ``ramfs``: Indicates you are booting an initial RAM disk (initramfs)
- ``ramfs``: Indicates you are booting an :term:`Initramfs`
image, which means the ``FSTYPE`` is ``cpio.gz``.
- ``iso``: Indicates you are booting an ISO image, which means the

View File

@@ -267,16 +267,16 @@ development using the Yocto Project. Your build host can be a native
Linux machine (recommended), it can be a machine (Linux, Mac, or
Windows) that uses `CROPS <https://github.com/crops/poky-container>`__,
which leverages `Docker Containers <https://www.docker.com/>`__ or it
can be a Windows machine capable of running Windows Subsystem For Linux
v2 (WSL).
can be a Windows machine capable of running version 2 of Windows Subsystem
For Linux (WSL 2).
.. note::
The Yocto Project is not compatible with
`Windows Subsystem for Linux v1 <https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux>`__.
It is compatible but not officially supported nor validated with
WSLv2. If you still decide to use WSL please upgrade to
`WSLv2 <https://docs.microsoft.com/en-us/windows/wsl/install-win10>`__.
The Yocto Project is not compatible with version 1 of
`Windows Subsystem for Linux <https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux>`__.
It is compatible but neither officially supported nor validated with
WSL 2. If you still decide to use WSL please upgrade to
`WSL 2 <https://learn.microsoft.com/en-us/windows/wsl/install>`__.
Once your build host is set up to use the Yocto Project, further steps
are necessary depending on what you want to accomplish. See the
@@ -441,35 +441,36 @@ Kit (eSDK) manual. If you are going to use the Toaster container, see
the ":doc:`/toaster-manual/setup-and-use`"
section in the Toaster User Manual.
Setting Up to Use Windows Subsystem For Linux (WSLv2)
Setting Up to Use Windows Subsystem For Linux (WSL 2)
-----------------------------------------------------
With `Windows Subsystem for Linux
(WSLv2) <https://docs.microsoft.com/en-us/windows/wsl/wsl2-about>`__,
With `Windows Subsystem for Linux (WSL 2)
<https://learn.microsoft.com/en-us/windows/wsl/>`__,
you can create a Yocto Project development environment that allows you
to build on Windows. You can set up a Linux distribution inside Windows
in which you can develop using the Yocto Project.
Follow these general steps to prepare a Windows machine using WSLv2 as
Follow these general steps to prepare a Windows machine using WSL 2 as
your Yocto Project build host:
1. *Make sure your Windows 10 machine is capable of running WSLv2:*
WSLv2 is only available for Windows 10 builds > 18917. To check which
build version you are running, you may open a command prompt on
Windows and execute the command "ver".
::
1. *Make sure your Windows machine is capable of running WSL 2:*
While all Windows 11 and Windows Server 2022 builds support WSL 2,
the first versions of Windows 10 and Windows Server 2019 didn't.
Check the minimum build numbers for `Windows 10
<https://learn.microsoft.com/en-us/windows/wsl/install-manual#step-2---check-requirements-for-running-wsl-2>`__
and for `Windows Server 2019
<https://learn.microsoft.com/en-us/windows/wsl/install-on-server>`__.
To check which build version you are running, you may open a command
prompt on Windows and execute the command "ver"::
C:\Users\myuser> ver
Microsoft Windows [Version 10.0.19041.153]
If your build is capable of running
WSLv2 you may continue, for more information on this subject or
instructions on how to upgrade to WSLv2 visit `Windows 10
WSLv2 <https://docs.microsoft.com/en-us/windows/wsl/wsl2-install>`__
2. *Install the Linux distribution of your choice inside Windows 10:*
Once you know your version of Windows 10 supports WSLv2, you can
2. *Install the Linux distribution of your choice inside WSL 2:*
Once you know your version of Windows supports WSL 2, you can
install the distribution of your choice from the Microsoft Store.
Open the Microsoft Store and search for Linux. While there are
several Linux distributions available, the assumption is that your
@@ -478,31 +479,28 @@ your Yocto Project build host:
making your selection, simply click "Get" to download and install the
distribution.
3. *Check your Linux distribution is using WSLv2:* Open a Windows
3. *Check which Linux distribution WSL 2 is using:* Open a Windows
PowerShell and run::
C:\WINDOWS\system32> wsl -l -v
NAME STATE VERSION
*Ubuntu Running 2
Note the version column which says the WSL version
being used by your distribution, on compatible systems, this can be
changed back at any point in time.
Note that WSL 2 supports running as many different Linux distributions
as you want to install.
4. *Optionally Orient Yourself on WSL:* If you are unfamiliar with WSL,
you can learn more here -
4. *Optionally Get Familiar with WSL:* You can learn more on
https://docs.microsoft.com/en-us/windows/wsl/wsl2-about.
5. *Launch your WSL Distibution:* From the Windows start menu simply
launch your WSL distribution just like any other application.
6. *Optimize your WSLv2 storage often:* Due to the way storage is
handled on WSLv2, the storage space used by the undelying Linux
distribution is not reflected immedately, and since BitBake heavily
6. *Optimize your WSL 2 storage often:* Due to the way storage is
handled on WSL 2, the storage space used by the underlying Linux
distribution is not reflected immediately, and since BitBake heavily
uses storage, after several builds, you may be unaware you are
running out of space. WSLv2 uses a VHDX file for storage, this issue
can be easily avoided by manually optimizing this file often, this
can be done in the following way:
running out of space. As WSL 2 uses a VHDX file for storage, this issue
can be easily avoided by regularly optimizing this file in a manual way:
1. *Find the location of your VHDX file:*
@@ -556,14 +554,14 @@ your Yocto Project build host:
.. note::
The current implementation of WSLv2 does not have out-of-the-box
The current implementation of WSL 2 does not have out-of-the-box
access to external devices such as those connected through a USB
port, but it automatically mounts your ``C:`` drive on ``/mnt/c/``
(and others), which you can use to share deploy artifacts to be later
flashed on hardware through Windows, but your build directory should
not reside inside this mountpoint.
Once you have WSLv2 set up, everything is in place to develop just as if
Once you have WSL 2 set up, everything is in place to develop just as if
you were running on a native Linux machine. If you are going to use the
Extensible SDK container, see the ":doc:`/sdk-manual/extensible`" Chapter in the Yocto
Project Application Development and the Extensible Software Development

View File

@@ -1316,7 +1316,7 @@ In order to run this task, you must have an existing ``.config`` file.
See the ":ref:`kernel-dev/common:using \`\`menuconfig\`\``" section for
information on how to create a configuration file.
Following is sample output from the ``do_kernel_configcheck`` task:
Following is sample output from the :ref:`ref-tasks-kernel_configcheck` task:
.. code-block:: none
@@ -1396,7 +1396,7 @@ possible by reading the output of the kernel configuration fragment
audit, noting any issues, making changes to correct the issues, and then
repeating.
As part of the kernel build process, the ``do_kernel_configcheck`` task
As part of the kernel build process, the :ref:`ref-tasks-kernel_configcheck` task
runs. This task validates the kernel configuration by checking the final
``.config`` file against the input files. During the check, the task
produces warning messages for the following issues:
@@ -1430,13 +1430,13 @@ To streamline the configuration, do the following:
successfully. Use this configuration file as your baseline.
2. *Run Configure and Check Tasks:* Separately run the
``do_kernel_configme`` and ``do_kernel_configcheck`` tasks::
:ref:`ref-tasks-kernel_configme` and :ref:`ref-tasks-kernel_configcheck` tasks::
$ bitbake linux-yocto -c kernel_configme -f
$ bitbake linux-yocto -c kernel_configcheck -f
3. *Process the Results:* Take the resulting list of files from the
``do_kernel_configcheck`` task warnings and do the following:
:ref:`ref-tasks-kernel_configcheck` task warnings and do the following:
- Drop values that are redefined in the fragment but do not change
the final ``.config`` file.
@@ -1450,7 +1450,7 @@ To streamline the configuration, do the following:
4. *Re-Run Configure and Check Tasks:* After you have worked through the
output of the kernel configuration audit, you can re-run the
``do_kernel_configme`` and ``do_kernel_configcheck`` tasks to see the
:ref:`ref-tasks-kernel_configme` and :ref:`ref-tasks-kernel_configcheck` tasks to see the
results of your changes. If you have more issues, you can deal with
them as described in the previous step.

View File

@@ -12,6 +12,7 @@ to move to one release of the Yocto Project from the previous one.
.. toctree::
migration-general
release-4.1
release-4.0
release-3.4
migration-3.3

View File

@@ -62,7 +62,7 @@ Previously, an inconsistent mix of spaces and tabs existed, which made
extending these functions using ``_append`` or ``_prepend`` complicated
given that Python treats whitespace as syntactically significant. If you
are defining or extending any Python functions (e.g.
``populate_packages``, ``do_unpack``, ``do_patch`` and so forth) in
``populate_packages``, :ref:`ref-tasks-unpack`, :ref:`ref-tasks-patch` and so forth) in
custom recipes or classes, you need to ensure you are using consistent
four-space indentation.

View File

@@ -240,7 +240,7 @@ Automated Image Testing
-----------------------
A new automated image testing framework has been added through the
:ref:`ref-classes-testimage*` classes. This
:ref:`ref-classes-testimage` classes. This
framework replaces the older ``imagetest-qemu`` framework.
You can learn more about performing automated image tests in the

View File

@@ -165,7 +165,7 @@ The following changes have occurred to the QA check process:
more parallel execution. This change is unlikely to be an issue
except for highly customized recipes that disable packaging tasks
themselves by marking them as ``noexec``. For those packages, you
will need to disable the ``do_package_qa`` task as well.
will need to disable the :ref:`ref-tasks-package_qa` task as well.
- Files being overwritten during the
:ref:`ref-tasks-populate_sysroot` task now

View File

@@ -84,7 +84,7 @@ where the ``linux.inc`` file in ``meta-oe`` was updated.
Recipes that rely on the kernel source code and do not inherit the
module classes might need to add explicit dependencies on the
``do_shared_workdir`` kernel task, for example::
:ref:`ref-tasks-shared_workdir` kernel task, for example::
do_configure[depends] += "virtual/kernel:do_shared_workdir"
@@ -128,7 +128,7 @@ when the :ref:`ref-tasks-configure` task needs to be
re-executed.
One of the improvements is to attempt to run "make clean" during the
``do_configure`` task if a ``Makefile`` exists. Some software packages
:ref:`ref-tasks-configure` task if a ``Makefile`` exists. Some software packages
do not provide a working clean target within their make files. If you
have such recipes, you need to set
:term:`CLEANBROKEN` to "1" within the recipe, for example::

View File

@@ -108,12 +108,12 @@ this change should not be a problem. However, if you have a recipe that
bypasses the standard :ref:`ref-tasks-configure` task
from the :ref:`autotools <ref-classes-autotools>` class and the software the recipe is building
uses a very old version of ``autoconf``, the recipe might be incapable
of determining the correct size of ``off_t`` during ``do_configure``.
of determining the correct size of ``off_t`` during :ref:`ref-tasks-configure`.
The best course of action is to patch the software as necessary to allow
the default implementation from the :ref:`autotools <ref-classes-autotools>` class to work such
that ``autoreconf`` succeeds and produces a working configure script,
and to remove the overridden ``do_configure`` task such that the default
and to remove the overridden :ref:`ref-tasks-configure` task such that the default
implementation does get used.
.. _migration-2.1-image-generation-split-out-from-filesystem-generation:
@@ -128,12 +128,12 @@ separate :ref:`ref-tasks-image` tasks for clarity both in
operation and in the code.
For most cases, this change does not present any problems. However, if
you have made customizations that directly modify the ``do_rootfs`` task
or that mention ``do_rootfs``, you might need to update those changes.
In particular, if you had added any tasks after ``do_rootfs``, you
you have made customizations that directly modify the :ref:`ref-tasks-rootfs` task
or that mention :ref:`ref-tasks-rootfs`, you might need to update those changes.
In particular, if you had added any tasks after :ref:`ref-tasks-rootfs`, you
should make edits so that those tasks are after the
:ref:`ref-tasks-image-complete` task rather than
after ``do_rootfs`` so that your added tasks run at the correct
after :ref:`ref-tasks-rootfs` so that your added tasks run at the correct
time.
A minor part of this restructuring is that the post-processing

View File

@@ -54,7 +54,7 @@ occurred:
when "pam" is in :term:`DISTRO_FEATURES`.
- The ``switch_root`` program is now packaged in a separate
"util-linux-switch-root" package for small initramfs images that
"util-linux-switch-root" package for small :term:`Initramfs` images that
do not need the whole ``util-linux`` package or the busybox
binary, which are both much larger than ``switch_root``. The main
``util-linux`` package has a recommended runtime dependency (i.e.

View File

@@ -261,7 +261,7 @@ The following are additional changes:
``pkg_postinst_ontarget()`` or call
``postinst_intercept delay_to_first_boot`` from ``pkg_postinst()``.
Any failure of a ``pkg_postinst()`` script (including ``exit 1``)
will trigger a warning during ``do_rootfs``.
will trigger a warning during :ref:`ref-tasks-rootfs`.
For more information, see the
":ref:`dev-manual/common-tasks:post-installation scripts`"

View File

@@ -135,7 +135,7 @@ Fetching these types of dependencies that are not provided in the
sysroot negatively affects the ability to reproduce builds. This type of
fetching is now explicitly disabled. Consequently, any missing
dependencies in Python recipes that use these classes now result in an
error during the ``do_configure`` task.
error during the :ref:`ref-tasks-configure` task.
.. _migration-2.6-linux-yocto-configuration-audit-issues-now-correctly-reported:
@@ -319,7 +319,7 @@ This section provides information about automatic testing changes:
practices now dictate that you use the
:term:`IMAGE_CLASSES` variable rather than the
:term:`INHERIT` variable when you inherit the
:ref:`testimage <ref-classes-testimage*>` and
:ref:`testimage <ref-classes-testimage>` and
:ref:`testsdk <ref-classes-testsdk>` classes used for automatic
testing.

View File

@@ -234,7 +234,7 @@ Packaging changes
Additional warnings
-------------------
Warnings will now be shown at ``do_package_qa`` time in the following
Warnings will now be shown at :ref:`ref-tasks-package_qa` time in the following
circumstances:
- A recipe installs ``.desktop`` files containing ``MimeType`` keys but

View File

@@ -60,7 +60,7 @@ pseudo as the interprocess round trip to the server is avoided.
There is a possible complication where some existing recipe may break, for
example, a recipe was found to be writing to ``${B}/install`` for
``make install`` in ``do_install`` and since ``${B}`` is listed as not to be tracked,
``make install`` in :ref:`ref-tasks-install` and since ``${B}`` is listed as not to be tracked,
there were errors trying to ``chown root`` for files in this location. Another
example was the ``tcl`` recipe where the source directory :term:`S` is set to a
subdirectory of the source tree but files were written out to the directory
@@ -191,7 +191,7 @@ Globbing no longer supported in ``file://`` entries in ``SRC_URI``
Globbing (``*`` and ``?`` wildcards) in ``file://`` URLs within :term:`SRC_URI`
did not properly support file checksums, thus changes to the source files
would not always change the do_fetch task checksum, and consequently would
would not always change the :ref:`ref-tasks-fetch` task checksum, and consequently would
not ensure that the changed files would be incorporated in subsequent builds.
Unfortunately it is not practical to make globbing work generically here, so
@@ -207,9 +207,9 @@ files into a subdirectory and reference that instead.
deploy class now cleans ``DEPLOYDIR`` before ``do_deploy``
----------------------------------------------------------
``do_deploy`` as implemented in the :ref:`deploy <ref-classes-deploy>` class now cleans up ${:term:`DEPLOYDIR`} before running, just as ``do_install`` cleans up ${:term:`D`} before running. This reduces the risk of :term:`DEPLOYDIR` being accidentally contaminated by files from previous runs, possibly even with different config, in case of incremental builds.
:ref:`ref-tasks-deploy` as implemented in the :ref:`deploy <ref-classes-deploy>` class now cleans up ${:term:`DEPLOYDIR`} before running, just as :ref:`ref-tasks-install` cleans up ${:term:`D`} before running. This reduces the risk of :term:`DEPLOYDIR` being accidentally contaminated by files from previous runs, possibly even with different config, in case of incremental builds.
Most recipes and classes that inherit the :ref:`deploy <ref-classes-deploy>` class or interact with ``do_deploy`` are unlikely to be affected by this unless they add ``prefuncs`` to ``do_deploy`` *which also* put files into ``${DEPLOYDIR}`` --- these should be refactored to use ``do_deploy_prepend`` instead.
Most recipes and classes that inherit the :ref:`deploy <ref-classes-deploy>` class or interact with :ref:`ref-tasks-deploy` are unlikely to be affected by this unless they add ``prefuncs`` to :ref:`ref-tasks-deploy` *which also* put files into ``${DEPLOYDIR}`` --- these should be refactored to use ``do_deploy_prepend`` instead.
.. _migration-3.2-nativesdk-sdk-provides-dummy:
@@ -265,10 +265,10 @@ using the GL options.
.. _migration-3.2-initramfs-suffix:
initramfs images now use a blank suffix
Initramfs images now use a blank suffix
---------------------------------------
The reference initramfs images (``core-image-minimal-initramfs``,
The reference :term:`Initramfs` images (``core-image-minimal-initramfs``,
``core-image-tiny-initramfs`` and ``core-image-testmaster-initramfs``) now
set an empty string for :term:`IMAGE_NAME_SUFFIX`, which otherwise defaults
to ``".rootfs"``. These images aren't root filesystems and thus the rootfs

View File

@@ -22,7 +22,7 @@ syntax, so the following::
SRC_URI_append = " file://somefile"
SRC_URI_append_qemux86 = " file://somefile2"
SRC_URI_remove_qemux86-64 = " file://somefile3"
SRC_URI_remove_qemux86-64 = "file://somefile3"
SRC_URI_prepend_qemuarm = "file://somefile4 "
FILES_${PN}-ptest = "${bindir}/xyz"
IMAGE_CMD_tar = "tar"
@@ -34,7 +34,7 @@ would now become::
SRC_URI:append = " file://somefile"
SRC_URI:append:qemux86 = " file://somefile2"
SRC_URI:remove:qemux86-64 = " file://somefile3"
SRC_URI:remove:qemux86-64 = "file://somefile3"
SRC_URI:prepend:qemuarm = "file://somefile4 "
FILES:${PN}-ptest = "${bindir}/xyz"
IMAGE_CMD:tar = "tar"
@@ -206,7 +206,7 @@ Package/recipe splitting
Image / SDK generation changes
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Recursive dependencies on the ``do_build`` task are now disabled when
- Recursive dependencies on the :ref:`ref-tasks-build` task are now disabled when
building SDKs. These are generally not needed; in the unlikely event
that you do encounter problems then it will probably be as a result of
missing explicit dependencies that need to be added.

View File

@@ -93,8 +93,8 @@ Fetching changes
do_mytask[network] = "1"
This is allowed by default from ``do_fetch`` but not from any of our other standard
tasks. Recipes shouldn't be accessing the network outside of ``do_fetch`` as it
This is allowed by default from :ref:`ref-tasks-fetch` but not from any of our other standard
tasks. Recipes shouldn't be accessing the network outside of :ref:`ref-tasks-fetch` as it
usually undermines fetcher source mirroring, image and licence manifests, software
auditing and supply chain security.
@@ -145,7 +145,7 @@ Python changes
:ref:`python_setuptools_build_meta <ref-classes-python_setuptools_build_meta>`
and :ref:`python_poetry_core <ref-classes-python_poetry_core>`.
- The :ref:`setuptools3 <ref-classes-setuptools3>` class ``do_install()`` task now
- 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 standard

View File

@@ -0,0 +1,214 @@
Release 4.1 (langdale)
======================
Migration notes for 4.1 (langdale)
-----------------------------------
This section provides migration information for moving to the Yocto
Project 4.1 Release (codename "langdale") from the prior release.
.. _migration-4.1-make-4.0:
make 4.0 is now the minimum required make version
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
glibc now requires ``make`` 4.0 to build, thus it is now the version required to
be installed on the build host. A new ``buildtools-make-tarball`` has been
introduced to provide just make 4.0 for host distros without a current/working
make 4.x version; if you also need other tools you can use the updated
``buildtools-tarball``. For more information see
:ref:`ref-manual/system-requirements:required packages for the build host`.
.. _migration-4.1-complementary-deps:
Complementary package installation ignores recommends
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
When installing complementary packages (e.g. ``-dev`` and ``-dbg`` packages when
building an SDK, or if you have added ``dev-deps`` to :term:`IMAGE_FEATURES`),
recommends (as defined by :term:`RRECOMMENDS`) are no longer installed.
If you wish to double-check the contents of your images after this change, see
:ref:`Checking Image / SDK Changes <migration-general-buildhistory>`. If needed
you can explicitly install items by adding them to :term:`IMAGE_INSTALL` in
image recipes or :term:`TOOLCHAIN_TARGET_TASK` for the SDK.
.. _migration-4.1-dev-recommends:
dev dependencies are now recommends
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The default for ``${PN}-dev`` package is now to use :term:`RRECOMMENDS` instead
of :term:`RDEPENDS` to pull in the main package. This takes advantage of a
change to complimentary package installation to not follow :term:`RRECOMMENDS`
(as mentioned above) and for example means an SDK for an image with both openssh
and dropbear components will now build successfully.
.. _migration-4.1-dropbear-sftp:
dropbear now recommends openssh-sftp-server
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
openssh has switched the scp client to use the sftp protocol instead of scp to
move files. This means scp from Fedora 36 and other current distributions will
no longer be able to move files to/from a system running dropbear with no sftp
server installed.
The sftp server from openssh is small (200kb uncompressed) and standalone, so
adding it to the packagegroup seems to be the best way to preserve the
functionality for user sanity. However, if you wish to avoid this dependency,
you can either:
A. Use ``dropbear`` in :term:`IMAGE_INSTALL` instead of
``packagegroup-core-ssh-dropbear`` (or ``ssh-server-dropbear`` in
:term:`IMAGE_FEATURES`), or
B. Add ``openssh-sftp-server`` to :term:`BAD_RECOMMENDATIONS`.
.. _migration-4.1-classes-split:
Classes now split by usage context
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
A split directory structure has now been set up for ``.bbclass`` files - classes
that are intended to be inherited only by recipes (e.g. ``inherit`` in a recipe
file, :term:`IMAGE_CLASSES` or :term:`KERNEL_CLASSES`) should be in a
``classes-recipe`` subdirectory and classes that are intended to be inherited
globally (e.g. via ``INHERIT +=``, :term:`PACKAGE_CLASSES`, :term:`USER_CLASSES`
or :term:`INHERIT_DISTRO`) should be in ``classes-global``. Classes in the
existing ``classes`` subdirectory will continue to work in any context as before.
Other than knowing where to look when manually browsing the class files, this is
not likely to require any changes to your configuration. However, if in your
configuration you were using some classes in the incorrect context, you will now
receive an error during parsing. For example, the following in ``local.conf`` will
now cause an error::
INHERIT += "testimage"
Since :ref:`testimage <ref-classes-testimage>` is a class intended solely to
affect image recipes, this would be correctly specified as::
IMAGE_CLASSES += "testimage"
.. _migration-4.1-local-file-error:
Missing local files in SRC_URI now triggers an error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
If a file referenced in :term:`SRC_URI` does not exist, in 4.1 this will trigger
an error at parse time where previously this only triggered a warning. In the past
you could ignore these warnings for example if you have multiple build
configurations (e.g. for several different target machines) and there were recipes
that you were not building in one of the configurations. If you have this scenario
you will now need to conditionally add entries to :term:`SRC_URI` where they are
valid, or use :term:`COMPATIBLE_MACHINE` / :term:`COMPATIBLE_HOST` to prevent the
recipe from being available (and therefore avoid it being parsed) in configurations
where the files aren't available.
.. _migration-4.1-qa-checks:
QA check changes
~~~~~~~~~~~~~~~~
- The :ref:`buildpaths <qa-check-buildpaths>` QA check is now enabled by default
in :term:`WARN_QA`, and thus any build system paths found in output files will
trigger a warning. If you see these warnings for your own recipes, for full
binary reproducibility you should make the necessary changes to the recipe build
to remove these paths. If you wish to disable the warning for a particular
recipe you can use :term:`INSANE_SKIP`, or for the entire build you can adjust
:term:`WARN_QA`. For more information, see the :ref:`buildpaths QA check
<qa-check-buildpaths>` section.
- ``do_qa_staging`` now checks shebang length in all directories specified by
:term:`SYSROOT_DIRS`, since there is a maximum length defined in the kernel. For
native recipes which write scripts to the sysroot, if the shebang line in one of
these scripts is too long you will get an error. This can be skipped using
:term:`INSANE_SKIP` if necessary, but the best course of action is of course to
fix the script. There is now also a ``create_cmdline_shebang_wrapper`` function
that you can call e.g. from ``do_install`` (or ``do_install:append``) within a
recipe to create a wrapper to fix such scripts - see the ``libcheck`` recipe
for an example usage.
Miscellaneous changes
~~~~~~~~~~~~~~~~~~~~~
- ``mount.blacklist`` has been renamed to ``mount.ignorelist`` in
``udev-extraconf``. If you are customising this file via ``udev-extraconf`` then
you will need to update your ``udev-extraconf`` ``.bbappend`` as appropriate.
- ``help2man-native`` has been removed from implicit sysroot dependencies. If a
recipe needs ``help2man-native`` it should now be explicitly added to
:term:`DEPENDS` within the recipe.
- For images using systemd, the reboot watchdog timeout has been set to 60
seconds (from the upstream default of 10 minutes). If you wish to override this
you can set :term:`WATCHDOG_TIMEOUT` to the desired timeout in seconds. Note
that the same :term:`WATCHDOG_TIMEOUT` variable also specifies the timeout used
for the ``watchdog`` tool (if that is being built).
- The :ref:`image-buildinfo <ref-classes-image-buildinfo>` class now writes to
``${sysconfdir}/buildinfo`` instead of ``${sysconfdir}/build`` by default (i.e.
the default value of :term:`IMAGE_BUILDINFO_FILE` has been changed). If you have
code that reads this from images at build or runtime you will need to update it
or specify your own value for :term:`IMAGE_BUILDINFO_FILE`.
- In the :ref:`archiver <ref-classes-archiver>` class, the default
``ARCHIVER_OUTDIR`` value no longer includes the :term:`MACHINE` value in order
to avoid the archive task running multiple times in a multiconfig setup. If you
have custom code that does something with the files archived by the
:ref:`archiver <ref-classes-archiver>` class then you may need to adjust it to
the new structure.
- If you are not using `systemd` then udev is now configured to use labels
(``LABEL`` or ``PARTLABEL``) to set the mount point for the device. For example::
/run/media/rootfs-sda2
instead of::
/run/media/sda2
- ``icu`` no longer provides the ``icu-config`` configuration tool - upstream
have indicated ``icu-config`` is deprecated and should no longer be used. Code
with references to it will need to be updated, for example to use ``pkg-config``
instead.
- The ``rng-tools`` systemd service name has changed from ``rngd`` to ``rng-tools``
- The ``largefile`` :term:`DISTRO_FEATURES` item has been removed, large file
support is now always enabled where it was previously optional.
- The Python ``zoneinfo`` module is now split out to its own ``python3-zoneinfo``
package.
- The :term:`PACKAGECONFIG` option to enable wpa_supplicant in the ``connman``
recipe has been renamed to "wpa-supplicant". If you have set PACKAGECONFIG for
the ``connman`` recipe to include this option you will need to update
your configuration. Related to this, the :term:`WIRELESS_DAEMON` variable
now expects the new ``wpa-supplicant`` naming and affects ``packagegroup-base``
as well as ``connman``.
- The ``wpa-supplicant`` recipe no longer uses a static (and stale) ``defconfig``
file, instead it uses the upstream version with appropriate edits for the
:term:`PACKAGECONFIG`. If you are customising this file you will need to
update your customisations.
- With the introduction of picobuild in
:ref:`python_pep517 <ref-classes-python_pep517>`, The ``PEP517_BUILD_API``
variable is no longer supported. If you have any references to this variable
you should remove them.
.. _migration-4.1-removed-recipes:
Removed recipes
~~~~~~~~~~~~~~~
The following recipes have been removed in this release:
- ``alsa-utils-scripts``: merged into alsa-utils
- ``cargo-cross-canadian``: optimised out
- ``lzop``: obsolete, unmaintained upstream
- ``linux-yocto (5.10)``: 5.15 and 5.19 are currently provided
- ``rust-cross``: optimised out
- ``rust-crosssdk``: optimised out
- ``rust-tools-cross-canadian``: optimised out
- ``xf86-input-keyboard``: obsolete (replaced by libinput/evdev)

View File

@@ -70,3 +70,36 @@ any new Yocto Project release.
bitbake-layers show-appends
.. _migration-general-buildhistory:
- *Checking Image / SDK Changes*:
The :ref:`buildhistory <ref-classes-buildhistory>` class can be used
if you wish to check the impact of changes to images / SDKs across
the migration (e.g. added/removed packages, added/removed files, size
changes etc.). To do this, follow these steps:
1. Enable buildhistory before the migration
2. Run a pre-migration build
3. Capture the buildhistory output (as specified by :term:`BUILDHISTORY_DIR`)
and ensure it is preserved for subsequent builds. How you would do this
depends on how you are running your builds - if you are doing this all on
one workstation in the same build directory you may not need to do
anything other than not deleting the buildhistory output directory. For
builds in a pipeline it may be more complicated.
4. Set a tag in the buildhistory output (which is a git repository) before
migration, to make the commit from the pre-migration build easy to find
as you may end up running multiple builds during the migration.
5. Perform the migration
6. Run a build
7. Check the output changes between the previously set tag and HEAD in the
buildhistory output using ``git diff`` or ``buildhistory-diff``.
For more information on using buildhistory, see
:ref:`dev-manual/common-tasks:maintaining build output quality`.

View File

@@ -8,3 +8,4 @@ Release 4.0 (kirkstone)
release-notes-4.0.1
release-notes-4.0.2
release-notes-4.0.3
release-notes-4.0.4

View File

@@ -0,0 +1,7 @@
Release 4.1 (langdale)
======================
.. toctree::
migration-4.1
release-notes-4.1

View File

@@ -167,7 +167,7 @@ Contributors to 3.4.2
- Vyacheslav Yurkov
- Yongxin Liu
- pgowda
- wangmy
- Wang Mingyu
Repositories / Downloads for 3.4.2
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

View File

@@ -124,7 +124,7 @@ Contributors to 3.4.3
- Tean Cunningham
- Zoltán Böszörményi
- pgowda
- wangmy
- Wang Mingyu
Repositories / Downloads for 3.4.3
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

View File

@@ -81,8 +81,8 @@ Contributors to 3.4.4
- Richard Purdie
- Ross Burton
- Tim Orling
- wangmy
- zhengruoqin
- Wang Mingyu
- Zheng Ruoqin
Repositories / Downloads for 3.4.4
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

View File

@@ -36,7 +36,7 @@ New Features / Enhancements in 3.4
- Kernel-related enhancements:
- Support zstd-compressed modules and initramfs images
- Support zstd-compressed modules and :term:`Initramfs` images
- Allow opt-out of split kernel modules
- linux-yocto-dev: base AUTOREV on specified version
- kernel-yocto: provide debug / summary information for metadata
@@ -67,7 +67,7 @@ New Features / Enhancements in 3.4
- SDK-related enhancements:
- Enable do_populate_sdk with multilibs
- Enable :ref:`ref-tasks-populate_sdk` with multilibs
- New ``SDKPATHINSTALL`` variable decouples default install path from built in path to avoid rebuilding nativesdk components on e.g. :term:`DISTRO_VERSION` changes
- eSDK: Error if trying to generate an eSDK from a multiconfig
- eSDK: introduce :term:`TOOLCHAIN_HOST_TASK_ESDK` to be used in place of :term:`TOOLCHAIN_HOST_TASK` to add components to the host part of the eSDK
@@ -211,7 +211,7 @@ The following corrections have been made to the LICENSE values set by recipes:
Other license-related notes:
- When creating recipes for Python software, recipetool will now treat "BSD" as "BSD-3-Clause" for the purposes of setting LICENSE, as that is the most common understanding.
- Please be aware that an initramfs bundled with the kernel using :term:`INITRAMFS_IMAGE_BUNDLE` should only contain GPLv2-compatible software; this is now mentioned in the documentation.
- Please be aware that an :term:`Initramfs` bundled with the kernel using :term:`INITRAMFS_IMAGE_BUNDLE` should only contain GPLv2-compatible software; this is now mentioned in the documentation.
Security Fixes in 3.4
~~~~~~~~~~~~~~~~~~~~~

View File

@@ -174,8 +174,8 @@ Contributors to 4.0.1
- Ross Burton
- Russ Dill
- Steve Sakoman
- wangmy
- zhengruoqin
- Wang Mingyu
- Zheng Ruoqin
Repositories / Downloads for 4.0.1
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

View File

@@ -223,7 +223,7 @@ Contributors to Yocto-4.0.2
- Xiaobing Luo
- Yi Zhao
- leimaohui
- wangmy
- Wang Mingyu
Repositories / Downloads for Yocto-4.0.2
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

View File

@@ -239,7 +239,7 @@ Contributors to Yocto-4.0.3
- Yue Tao
- gr embeter
- leimaohui
- wangmy
- Wang Mingyu
Repositories / Downloads for Yocto-4.0.3

View File

@@ -0,0 +1,299 @@
Release notes for Yocto-4.0.4 (Kirkstone)
-----------------------------------------
Security Fixes in Yocto-4.0.4
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- binutils : fix :cve:`2022-38533`
- curl: fix :cve:`2022-35252`
- sqlite: fix :cve:`2022-35737`
- grub2: fix :cve:`2021-3695`, :cve:`2021-3696`, :cve:`2021-3697`, :cve:`2022-28733`, :cve:`2022-28734` and :cve:`2022-28735`
- u-boot: fix :cve:`2022-30552` and :cve:`2022-33967`
- libxml2: Ignore :cve:`2016-3709`
- libtiff: fix :cve:`2022-34526`
- zlib: fix :cve:`2022-37434`
- gnutls: fix :cve:`2022-2509`
- u-boot: fix :cve:`2022-33103`
- qemu: fix :cve:`2021-3507`, :cve:`2021-3929`, :cve:`2021-4158`, :cve:`2022-0216` and :cve:`2022-0358`
Fixes in Yocto-4.0.4
~~~~~~~~~~~~~~~~~~~~
- apr: Cache configure tests which use AC_TRY_RUN
- apr: Use correct strerror_r implementation based on libc type
- apt: fix nativesdk-apt build failure during the second time build
- archiver.bbclass: remove unsed do_deploy_archives[dirs]
- archiver.bbclass: some recipes that uses the kernelsrc bbclass uses the shared source
- autoconf: Fix strict prototype errors in generated tests
- autoconf: Update K & R stype functions
- bind: upgrade to 9.18.5
- bitbake.conf: set BB_DEFAULT_UMASK using ??=
- bitbake: ConfHandler/BBHandler: Improve comment error messages and add tests
- bitbake: ConfHandler: Remove lingering close
- bitbake: bb/utils: movefile: use the logger for printing
- bitbake: bb/utils: remove: check the path again the expand python glob
- bitbake: bitbake-user-manual: Correct description of the ??= operator
- bitbake: bitbake-user-manual: npm fetcher: improve description of SRC_URI format
- bitbake: bitbake: bitbake-user-manual: hashserv can be accessed on a dedicated domain
- bitbake: bitbake: runqueue: add cpu/io pressure regulation
- bitbake: bitbake: runqueue: add memory pressure regulation
- bitbake: cooker: Drop sre_constants usage
- bitbake: doc: bitbake-user-manual: add explicit target for crates fetcher
- bitbake: doc: bitbake-user-manual: document npm and npmsw fetchers
- bitbake: event.py: ignore exceptions from stdout and sterr operations in atexit
- bitbake: fetch2: Ensure directory exists before creating symlink
- bitbake: fetch2: gitsm: fix incorrect handling of git submodule relative urls
- bitbake: runqueue: Change pressure file warning to a note
- bitbake: runqueue: Fix unihash cache mismatch issues
- bitbake: toaster: fix kirkstone version
- bitbake: utils: Pass lock argument in fileslocked
- bluez5: upgrade to 5.65
- boost: fix install of fiber shared libraries
- cairo: Adapt the license information based on what is being built
- classes: cve-check: Get shared database lock
- cmake: remove CMAKE_ASM_FLAGS variable in toolchain file
- connman: Backports for security fixes
- core-image.bbclass: Exclude openssh complementary packages
- cracklib: Drop using register keyword
- cracklib: upgrade to 2.9.8
- create-spdx: Fix supplier field
- create-spdx: handle links to inaccessible locations
- create-spdx: ignore packing control files from ipk and deb
- cve-check: Don't use f-strings
- cve-check: close cursors as soon as possible
- devtool/upgrade: catch bb.fetch2.decodeurl errors
- devtool/upgrade: correctly clean up when recipe filename isn't yet known
- devtool: error out when workspace is using old override syntax
- ell: upgrade to 0.50
- epiphany: upgrade to 42.4
- externalsrc: Don't wipe out src dir when EXPORT_FUNCTIONS is used.
- gcc-multilib-config: Fix i686 toolchain relocation issues
- gcr: Define _GNU_SOURCE
- gdk-pixbuf: upgrade to 2.42.9
- glib-networking: upgrade to 2.72.2
- go: upgrade to v1.17.13
- insane.bbclass: Skip patches not in oe-core by full path
- iso-codes: upgrade to 4.11.0
- kernel-fitimage.bbclass: add padding algorithm property in config nodes
- kernel-fitimage.bbclass: only package unique DTBs
- kernel: Always set CC and LD for the kernel build
- kernel: Use consistent make flags for menuconfig
- lib:npm_registry: initial checkin
- libatomic-ops: upgrade to 7.6.14
- libcap: upgrade to 2.65
- libjpeg-turbo: upgrade to 2.1.4
- libpam: use /run instead of /var/run in systemd tmpfiles
- libtasn1: upgrade to 4.19.0
- liburcu: upgrade to 0.13.2
- libwebp: upgrade to 1.2.4
- libwpe: upgrade to 1.12.3
- libxml2: Port gentest.py to Python-3
- lighttpd: upgrade to 1.4.66
- linux-yocto/5.10: update genericx86* machines to v5.10.135
- linux-yocto/5.10: update to v5.10.137
- linux-yocto/5.15: update genericx86* machines to v5.15.59
- linux-yocto/5.15: update to v5.15.62
- linux-yocto: Fix COMPATIBLE_MACHINE regex match
- linux-yocto: prepend the value with a space when append to KERNEL_EXTRA_ARGS
- lttng-modules: fix 5.19+ build
- lttng-modules: fix build against mips and v5.19 kernel
- lttng-modules: fix build for kernel 5.10.137
- lttng-modules: replace mips compaction fix with upstream change
- lz4: upgrade to 1.9.4
- maintainers: update opkg maintainer
- meta: introduce UBOOT_MKIMAGE_KERNEL_TYPE
- migration guides: add missing release notes
- mobile-broadband-provider-info: upgrade to 20220725
- nativesdk: Clear TUNE_FEATURES
- npm: replace 'npm pack' call by 'tar czf'
- npm: return content of 'package.json' in 'npm_pack'
- npm: take 'version' directly from 'package.json'
- npm: use npm_registry to cache package
- oeqa/gotoolchain: put writable files in the Go module cache
- oeqa/gotoolchain: set CGO_ENABLED=1
- oeqa/parselogs: add qemuarmv5 arm-charlcd masking
- oeqa/qemurunner: add run_serial() comment
- oeqa/selftest: rename git.py to intercept.py
- oeqa: qemurunner: Report UNIX Epoch timestamp on login
- package_rpm: Do not replace square brackets in %files
- packagegroup-self-hosted: update for strace
- parselogs: Ignore xf86OpenConsole error
- perf: Fix reproducibility issues with 5.19 onwards
- pinentry: enable _XOPEN_SOURCE on musl for wchar usage in curses
- poky.conf: add ubuntu-22.04 to tested distros
- poky.conf: bump version for 4.0.4
- pseudo: Update to include recent upstream minor fixes
- python3-pip: Fix RDEPENDS after the update
- ref-manual: add numa to machine features
- relocate_sdk.py: ensure interpreter size error causes relocation to fail
- rootfs-postcommands.bbclass: avoid moving ssh host keys if etc is writable
- rootfs.py: dont try to list installed packages for baremetal images
- rootfspostcommands.py: Cleanup subid backup files generated by shadow-utils
- ruby: drop capstone support
- runqemu: Add missing space on default display option
- runqemu: display host uptime when starting
- sanity: add a comment to ensure CONNECTIVITY_CHECK_URIS is correct
- scripts/oe-setup-builddir: make it known where configurations come from
- scripts/runqemu.README: fix typos and trailing whitespaces
- selftest/wic: Tweak test case to not depend on kernel size
- shadow: Avoid nss warning/error with musl
- shadow: Enable subid support
- system-requirements.rst: Add Ubuntu 22.04 to list of supported distros
- systemd: Add 'no-dns-fallback' PACKAGECONFIG option
- systemd: Fix unwritable /var/lock when no sysvinit handling
- sysvinit-inittab/start_getty: Fix respawn too fast
- tcp-wrappers: Fix implicit-function-declaration warnings
- tzdata: upgrade to 2022b
- util-linux: Remove --enable-raw from EXTRA_OECONF
- vala: upgrade to 0.56.3
- vim: Upgrade to 9.0.0453
- watchdog: Include needed system header for function decls
- webkitgtk: upgrade to 2.36.5
- weston: upgrade to 10.0.2
- wic/bootimg-efi: use cross objcopy when building unified kernel image
- wic: add target tools to PATH when executing native commands
- wic: depend on cross-binutils
- wireless-regdb: upgrade to 2022.08.12
- wpebackend-fdo: upgrade to 1.12.1
- xinetd: Pass missing -D_GNU_SOURCE
- xz: update to 5.2.6
Known Issues in Yocto-4.0.4
~~~~~~~~~~~~~~~~~~~~~~~~~~~
- N/A
Contributors to Yocto-4.0.4
~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Alejandro Hernandez Samaniego
- Alex Stewart
- Alexander Kanavin
- Alexandre Belloni
- Andrei Gherzan
- Anuj Mittal
- Aryaman Gupta
- Awais Belal
- Beniamin Sandu
- Bertrand Marquis
- Bruce Ashfield
- Changqing Li
- Chee Yang Lee
- Daiane Angolini
- Enrico Scholz
- Ernst Sjöstrand
- Gennaro Iorio
- Hitendra Prajapati
- Jacob Kroon
- Jon Mason
- Jose Quaresma
- Joshua Watt
- Kai Kang
- Khem Raj
- Kristian Amlie
- LUIS ENRIQUEZ
- Mark Hatle
- Martin Beeger
- Martin Jansa
- Mateusz Marciniec
- Michael Opdenacker
- Mihai Lindner
- Mikko Rapeli
- Ming Liu
- Niko Mauno
- Ola x Nilsson
- Otavio Salvador
- Paul Eggleton
- Pavel Zhukov
- Peter Bergin
- Peter Kjellerstedt
- Peter Marko
- Rajesh Dangi
- Randy MacLeod
- Rasmus Villemoes
- Richard Purdie
- Robert Joslyn
- Roland Hieber
- Ross Burton
- Sakib Sajal
- Shubham Kulkarni
- Steve Sakoman
- Ulrich Ölmann
- Yang Xu
- Yongxin Liu
- ghassaneben
- pgowda
- Wang Mingyu
Repositories / Downloads for Yocto-4.0.4
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poky
- Repository Location: https://git.yoctoproject.org/git/poky
- Branch: :yocto_git:`kirkstone </poky/log/?h=kirkstone>`
- Tag: :yocto_git:`yocto-4.0.4 </poky/log/?h=yocto-4.0.4>`
- Git Revision: :yocto_git:`d64bef1c7d713b92a51228e5ade945835e5a94a4 </poky/commit/?id=d64bef1c7d713b92a51228e5ade945835e5a94a4>`
- Release Artefact: poky-d64bef1c7d713b92a51228e5ade945835e5a94a4
- sha: b5e92506b31f88445755bad2f45978b747ad1a5bea66ca897370542df5f1e7db
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-4.0.4/poky-d64bef1c7d713b92a51228e5ade945835e5a94a4.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-4.0.4/poky-d64bef1c7d713b92a51228e5ade945835e5a94a4.tar.bz2
openembedded-core
- Repository Location: https://git.openembedded.org/openembedded-core
- Branch: :oe_git:`kirkstone </openembedded-core/log/?h=kirkstone>`
- Tag: :oe_git:`yocto-4.0.4 </openembedded-core/log/?h=yocto-4.0.4>`
- Git Revision: :oe_git:`f7766da462905ec67bf549d46b8017be36cd5b2a </openembedded-core/commit/?id=f7766da462905ec67bf549d46b8017be36cd5b2a>`
- Release Artefact: oecore-f7766da462905ec67bf549d46b8017be36cd5b2a
- sha: ce0ac011474db5e5f0bb1be3fb97f890a02e46252a719dbcac5813268e48ff16
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-4.0.4/oecore-f7766da462905ec67bf549d46b8017be36cd5b2a.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-4.0.4/oecore-f7766da462905ec67bf549d46b8017be36cd5b2a.tar.bz2
meta-mingw
- Repository Location: https://git.yoctoproject.org/git/meta-mingw
- Branch: :yocto_git:`kirkstone </meta-mingw/log/?h=kirkstone>`
- Tag: :yocto_git:`yocto-4.0.4 </meta-mingw/log/?h=yocto-4.0.4>`
- Git Revision: :yocto_git:`a90614a6498c3345704e9611f2842eb933dc51c1 </meta-mingw/commit/?id=a90614a6498c3345704e9611f2842eb933dc51c1>`
- Release Artefact: meta-mingw-a90614a6498c3345704e9611f2842eb933dc51c1
- sha: 49f9900bfbbc1c68136f8115b314e95d0b7f6be75edf36a75d9bcd1cca7c6302
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-4.0.4/meta-mingw-a90614a6498c3345704e9611f2842eb933dc51c1.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-4.0.4/meta-mingw-a90614a6498c3345704e9611f2842eb933dc51c1.tar.bz2
meta-gplv2
- Repository Location: https://git.yoctoproject.org/git/meta-gplv2
- Branch: :yocto_git:`kirkstone </meta-gplv2/log/?h=kirkstone>`
- Tag: :yocto_git:`yocto-4.0.4 </meta-gplv2/log/?h=yocto-4.0.4>`
- Git Revision: :yocto_git:`d2f8b5cdb285b72a4ed93450f6703ca27aa42e8a </meta-gplv2/commit/?id=d2f8b5cdb285b72a4ed93450f6703ca27aa42e8a>`
- Release Artefact: meta-gplv2-d2f8b5cdb285b72a4ed93450f6703ca27aa42e8a
- sha: c386f59f8a672747dc3d0be1d4234b6039273d0e57933eb87caa20f56b9cca6d
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-4.0.4/meta-gplv2-d2f8b5cdb285b72a4ed93450f6703ca27aa42e8a.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-4.0.4/meta-gplv2-d2f8b5cdb285b72a4ed93450f6703ca27aa42e8a.tar.bz2
bitbake
- Repository Location: https://git.openembedded.org/bitbake
- Branch: :oe_git:`2.0 </bitbake/log/?h=2.0>`
- Tag: :oe_git:`yocto-4.0.4 </bitbake/log/?h=yocto-4.0.4>`
- Git Revision: :oe_git:`ac576d6fad6bba0cfea931883f25264ea83747ca </bitbake/commit/?id=ac576d6fad6bba0cfea931883f25264ea83747ca>`
- Release Artefact: bitbake-ac576d6fad6bba0cfea931883f25264ea83747ca
- sha: 526c2768874eeda61ade8c9ddb3113c90d36ef44a026d6690f02de6f3dd0ea12
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-4.0.4/bitbake-ac576d6fad6bba0cfea931883f25264ea83747ca.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-4.0.4/bitbake-ac576d6fad6bba0cfea931883f25264ea83747ca.tar.bz2
yocto-docs
- Repository Location: https://git.yoctoproject.org/git/yocto-docs
- Branch: :yocto_git:`kirkstone </yocto-docs/log/?h=kirkstone>`
- Tag: :yocto_git:`yocto-4.0.4 </yocto-docs/log/?h=yocto-4.0.4>`
- Git Revision: :yocto_git:`f632dad24c39778f948014029e74db3c871d9d21 </yocto-docs/commit/?id=f632dad24c39778f948014029e74db3c871d9d21>`

View File

@@ -30,7 +30,7 @@ New Features / Enhancements in 4.0
- New :ref:`overlayfs <ref-classes-overlayfs>` and
:ref:`overlayfs-etc <ref-classes-overlayfs-etc>` classes and
``overlayroot`` support in the initramfs framework to make it easier to
``overlayroot`` support in the :term:`Initramfs` framework to make it easier to
overlay read-only filesystems (for example) with
`OverlayFS <https://en.wikipedia.org/wiki/OverlayFS>`__.
@@ -168,7 +168,7 @@ New Features / Enhancements in 4.0
- Kernel-related enhancements:
- Allow initramfs to be built from a separate multiconfig
- Allow :term:`Initramfs` to be built from a separate multiconfig
- Make kernel-base recommend kernel-image, not depend (allowing images containing kernel modules without kernel image)
- linux-yocto: split vtpm for more granular inclusion
- linux-yocto: cfg/debug: add configs for kcsan
@@ -182,7 +182,7 @@ New Features / Enhancements in 4.0
- FIT image related enhancements:
- New ``FIT_SUPPORTED_INITRAMFS_FSTYPES`` variable to allow extending initramfs image types to look for
- New ``FIT_SUPPORTED_INITRAMFS_FSTYPES`` variable to allow extending :term:`Initramfs` image types to look for
- New ``FIT_CONF_PREFIX`` variable to allow overriding FIT configuration prefix
- Use 'bbnote' for better logging
@@ -276,7 +276,7 @@ New Features / Enhancements in 4.0
- volatile-binds: SELinux and overlayfs extensions in mount-copybind
- gtk-icon-cache: Allow using gtk4
- kmod: Add an exclude directive to depmod
- os-release: add os-release-initrd package for use in systemd-based initramfs images
- os-release: add os-release-initrd package for use in systemd-based :term:`Initramfs` images
- gstreamer1.0-plugins-base: add support for graphene
- gpg-sign: Add parameters to gpg signature function
- package_manager: sign DEB package feeds

View File

@@ -0,0 +1,758 @@
Release notes for 4.1 (langdale)
---------------------------------
New Features / Enhancements in 4.1
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Linux kernel 5.19, glibc 2.36 and ~260 other recipe upgrades
- ``make`` 4.0 is now the minimum make version required on the build host.
For host distros that do not provide it, this is included as part of the
``buildtools-tarball``, and additionally a new ``buildtools-make-tarball``
has been introduced to provide this in particular for host distros with
a broken make 4.x version. For more details see
:ref:`ref-manual/system-requirements:required git, tar, python, make and gcc versions`.
- New layer setup tooling:
- New ``scripts/oe-setup-layers`` standalone script to restore the layer
configuration from a json file
- New ``bitbake-layers create-layers-setup`` command to save the
layer configuration to a json file
- New ``bitbake-layers save-build-conf`` command to save the active build
configuration as a template into a layer
- Rust-related enhancements:
- Support for building rust for the target
- Significant SDK toolchain build optimisation
- Support for building native components in the SDK
- Support ``crate://`` fetcher with :ref:`externalsrc <ref-classes-externalsrc>`
- New core recipes:
- ``buildtools-make-tarball``
- ``icon-naming-utils`` (previously removed)
- ``musl-locales``
- ``python3-editables`` (originally in meta-python)
- ``python3-hatch-vcs``
- ``python3-hatchling`` (originally in meta-oe)
- ``python3-lxml`` (originally in meta-python)
- ``python3-pathspec`` (originally in meta-python)
- ``python3-picobuild``
- ``sato-icon-theme`` (previously removed)
- CVE checking enhancements:
- New :term:`CVE_DB_UPDATE_INTERVAL` variable to allow specifying the CVE database minimum update interval (and default to once per day)
- Added JSON format to summary output
- Added support for Ignored CVEs
- Enable recursive CVE checking also for ``do_populate_sdk``
- New :term:`CVE_CHECK_SHOW_WARNINGS` variable to disable unpatched CVE warning messages
- The :ref:`pypi <ref-classes-pypi>` class now defaults :term:`CVE_PRODUCT` from :term:`PYPI_PACKAGE`
- Added current kernel CVEs to ignore list since we stay as close to the kernel stable releases as we can
- Optimisations to avoid dependencies on fetching
- Complementary package installation (as used in SDKs and images) no longer installs recommended packages, in order to avoid conflicts
- Dependency of -dev package on main package is now an :term:`RRECOMMENDS` and can be easily set via new :term:`DEV_PKG_DEPENDENCY` variable
- Support for CPU, I/O and memory pressure regulation in BitBake
- Pressure data gathering in ``buildstats`` and rendering in ``pybootchartgui``
- New Picobuild system for lightweight Python PEP-517 build support in the :ref:`python_pep517 <ref-classes-python_pep517>` class
- Many classes are now split into global and recipe contexts for better
validation. For more information, see
:ref:`Classes now split by usage context <migration-4.1-classes-split>`.
- Architecture-specific enhancements:
- arch-armv8-4a.inc: add tune include for armv8.4a
- tune-neoversen2: support tune-neoversen2 base on armv9a
- riscv: Add tunes for rv64 without compressed instructions
- gnu-efi: enable for riscv64
- shadow-securetty: allow ttyS4 for amd-snowyowl-64
- Kernel-related enhancements:
- linux-yocto/5.15: cfg/xen: Move x86 configs to separate file
- linux-yocto/5.15: Enabled MDIO bus config
- linux-yocto: Enable mdio for qemu
- linux-yocto/5.15: base: enable kernel crypto userspace API
- kern-tools: allow 'y' or 'm' to avoid config audit warnings
- kernel-yocto.bbclass: say what SRC_URI entry is being dropped
- kernel.bbclass: Do not overwrite recipe's custom postinst
- kmod: Enable xz support by default
- Run depmod(wrapper) against each compiled kernel when multiple kernels are enabled
- linux-yocto-tiny: enable qemuarmv5/qemuarm64
- wic Image Creator enhancements:
- Added dependencies to support erofs
- Added ``fspassno`` parameter to partition to allow specifying the value of the last column (``fs_passno``) in ``/etc/fstab``.
- bootimg-efi: added support for loading devicetree files
- Added ``none`` fstype for custom image (for use in conjunction with ``rawcopy``)
- SDK-related enhancements:
- :ref:`Support for using the regular build system as an SDK <sdk-manual/extensible:Setting up the Extensible SDK environment directly in a Yocto build>`
- :ref:`image-buildinfo <ref-classes-image-buildinfo>` class now also writes build information to SDKs
- New :term:`SDK_TOOLCHAIN_LANGS` variable to control support of rust / go in SDK
- rust-llvm: enabled nativesdk variant
- python3-pluggy: enabled for native/nativesdk
- QEMU/runqemu enhancements:
- qemux86-64: Allow higher tunes
- runqemu: display host uptime when starting
- runqemu: add ``QB_KERNEL_CMDLINE`` that can be set to "none" to avoid overriding kernel command line specified in dtb
- Image-related enhancements:
- New variable :term:`UBOOT_MKIMAGE_KERNEL_TYPE`
- New variable :term:`FIT_PAD_ALG` to control FIT image padding algorithm
- New :term:`KERNEL_DEPLOY_DEPEND` variable to allow disabling image dependency on deploying the kernel
- image_types: isolate the write of UBI configuration to a ``write_ubi_config`` function that can be easily overridden
- openssh: add support for config snippet includes to ssh and sshd
- :ref:`create-spdx <ref-classes-create-spdx>`: Add ``SPDX_PRETTY`` option
- wpa-supplicant: build static library if not disabled via :term:`DISABLE_STATIC`
- wpa-supplicant: package dynamic modules
- openssl: extract legacy provider module to a separate package
- linux-firmware: split out ath3k firmware
- linux-firmware: add support for building snapshots
- eudev: create static-nodes in init script
- udev-extraconf: new :term:`MOUNT_BASE` variable allows configuring automount base directory
- udev-extraconf/mount.sh: use partition labels in mountpoint paths
- systemd: Set RebootWatchdogSec to 60s by default
- systemd: systemd-systemctl: Support instance conf files during enable
- weston.init: enable ``xwayland`` in weston.ini if ``x11`` is in :term:`DISTRO_FEATURES`
- New ``npm_registry`` Python module to enable caching with nodejs 16+
- :ref:`npm <ref-classes-npm>`: replaced ``npm pack`` call with ``tar czf`` for nodejs 16+ compatibility and improved ``do_configure`` performance
- Enabled :ref:`bin_package <ref-classes-bin-package>` class to work properly in the native case
- Enabled :ref:`buildpaths <qa-check-buildpaths>` QA check as a warning by default
- New :term:`OVERLAYFS_ETC_EXPOSE_LOWER` to provide read-only access to the original ``/etc`` content with :ref:`overlayfs-etc <ref-classes-overlayfs-etc>`
- New :term:`OVERLAYFS_QA_SKIP` variable to allow skipping check on :ref:`overlayfs <ref-classes-overlayfs>` mounts
- New :term:`PACKAGECONFIG` options for individual recipes:
- apr: xsi-strerror
- btrfs-tools: lzo
- connman: iwd
- coreutils: openssl
- dropbear: enable-x11-forwarding
- eudev: blkid, kmod, rule-generator
- eudev: manpages, selinux
- flac: avx, ogg
- gnutls: fips
- gstreamer1.0-plugins-bad: avtp
- libsdl2: libusb
- llvm: optviewer
- mesa: vulkan, vulkan-beta, zink
- perf: bfd
- piglit: glx, opencl
- python3: editline
- qemu: bpf, brlapi, capstone, rdma, slirp, uring, vde
- rpm: readline
- ruby: capstone
- systemd: no-dns-fallback, sysext
- tiff: jbig
- ptest enhancements in ``curl``, ``json-c``, ``libgcrypt``, ``libgpg-error``, ``libxml2``
- ptest compile/install functions now use :term:`PARALLEL_MAKE` and :term:`PARALLEL_MAKEINST` in ptest for significant speedup
- New :term:`TC_CXX_RUNTIME` variable to enable other layers to more easily control C++ runtime
- Set :term:`BB_DEFAULT_UMASK` using ??= to make it easier to override
- Set :term:`TCLIBC` and :term:`TCMODE` using ??= to make them easier to override
- squashfs-tools: build with lzo support by default
- insane.bbclass: make ``do_qa_staging`` check shebang length for native scripts in all :term:`SYSROOT_DIRS`
- utils: Add ``create_cmdline_shebang_wrapper`` function to allow recipes to easily create a wrapper to fix long shebang lines
- meson: provide relocation script and native/cross wrappers also for meson-native
- meson.bbclass: add cython binary to cross/native toolchain config
- New ``musl-locales`` recipe to provide a limited set of locale data for musl based systems
- gobject-introspection: use ``OBJDUMP`` environment variable so that objdump tool can be picked up from the environment
- The Python ``zoneinfo`` module is now split out to its own ``python3-zoneinfo`` package.
- busybox: added devmem 128-bit support
- vim: split xxd out into its own package
- New :ref:`github-releases <ref-classes-github-releases>` class to consolidate version checks for github-based packages
- ``devtool reset`` now preserves ``workspace/sources`` source trees in ``workspace/attic/sources/`` instead of leaving them in-place
- scripts/patchreview: Add commit to stored json data
- scripts/patchreview: Make json output human parsable
- ``wpa-supplicant`` recipe now uses the upstream ``defconfig`` modified based upon :term:`PACKAGECONFIG` instead of a stale ``defconfig`` file
- bitbake: build: prefix the tasks with a timestamp in the log.task_order
- bitbake: fetch2/osc: Add support to query latest revision
- bitbake: utils: Pass lock argument in fileslocked
- bitbake: utils: Add enable_loopback_networking()
Known Issues in 4.1
~~~~~~~~~~~~~~~~~~~
- The change to :ref:`migration-4.1-complementary-deps` means that images
built with the ``ptest-pkgs`` :term:`IMAGE_FEATURES` dont automatically
install ``ptest-runner``, as that package is a recommendation of the
individual ``-ptest`` packages. This will be resolved in the next point
release, and can be worked around by explicitly installing ``ptest-runner``
into the image. Filed as :yocto_bugs:`bug 14928 </show_bug.cgi?id=14928>`.
- There is a known issue with eSDKs where sstate objects may be missing,
resulting in packages being unavailable to install in the sysroot. This is due
to image generation optimisations having unintended consequences in eSDK
generation. This will be resolved in the next point release. Filed as
:yocto_bugs:`bug 14626 </show_bug.cgi?id=14626>`, which also details the fix.
- The change to :ref:`migration-4.1-classes-split` inadvertently moved the
:ref:`externalsrc <ref-classes-externalsrc>` class to ``meta/classes-recipe``,
when it is not recipe-specific and can also be used in a global context. The
class will be moved back to ``meta/classes`` in the next point release. Filed
as :yocto_bugs:`bug 14940 </show_bug.cgi?id=14940>`.
Recipe License changes in 4.1
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The following corrections have been made to the LICENSE values set by recipes:
- alsa-state: add GPL-2.0-or-later because of alsa-state-init file
- git: add GPL-2.0-or-later & BSD-3-Clause & MIT & BSL-1.0 & LGPL-2.1-or-later due to embedded code
- libgcrypt: dropped GPLv3 license after upstream changes
- linux-firmware: correct license for ar3k firmware (specific "ar3k" license)
Security Fixes in 4.1
~~~~~~~~~~~~~~~~~~~~~
- bind: :cve:`2022-1183`, :cve:`2022-2795`, :cve:`2022-2881`, :cve:`2022-2906`, :cve:`2022-3080`, :cve:`2022-38178`
- binutils: :cve:`2019-1010204`, :cve:`2022-38126`, :cve:`2022-38127`, :cve:`2022-38128`, :cve:`2022-38533`
- busybox: :cve:`2022-30065`
- connman: :cve:`2022-32292`, :cve:`2022-32293`
- cups: :cve:`2022-26691`
- e2fsprogs: :cve:`2022-1304`
- expat: :cve:`2022-40674`
- freetype: :cve:`2022-27404`
- glibc: :cve:`2022-39046`
- gnupg: :cve:`2022-34903`
- grub2: :cve:`2021-3695`, :cve:`2021-3696`, :cve:`2021-3697`, :cve:`2022-28733`, :cve:`2022-28734`, :cve:`2022-28735`
- inetutils: :cve:`2022-39028`
- libtirpc: :cve:`2021-46828`
- libxml2: :cve:`2016-3709 (ignored)`
- libxslt: :cve:`2022-29824 (not applicable)`
- linux-yocto/5.15: :cve:`2022-28796`
- logrotate: :cve:`2022-1348`
- lua: :cve:`2022-33099`
- nasm: :cve:`2020-18974 (ignored)`
- ncurses: :cve:`2022-29458`
- openssl: :cve:`2022-1292`, :cve:`2022-1343`, :cve:`2022-1434`, :cve:`2022-1473`, :cve:`2022-2068`, :cve:`2022-2274`, :cve:`2022-2097`
- python3: :cve:`2015-20107 (ignored)`
- qemu: :cve:`2021-20255 (ignored)`, :cve:`2019-12067 (ignored)`, :cve:`2021-3507`, :cve:`2022-0216`, :cve:`2022-2962`, :cve:`2022-35414`
- rpm: :cve:`2021-35937`, :cve:`2021-35938`, :cve:`2021-35939`
- rsync: :cve:`2022-29154`
- subversion: :cve:`2021-28544`, :cve:`2022-24070`
- tiff: :cve:`2022-1210 (not applicable)`, :cve:`2022-1622`, :cve:`2022-1623 (invalid)`, :cve:`2022-2056`, :cve:`2022-2057`, :cve:`2022-2058`, :cve:`2022-2953`, :cve:`2022-34526`
- unzip: :cve:`2022-0529`, :cve:`2022-0530`
- vim: :cve:`2022-1381`, :cve:`2022-1420`, :cve:`2022-1621`, :cve:`2022-1629`, :cve:`2022-1674`, :cve:`2022-1733`, :cve:`2022-1735`, :cve:`2022-1769`, :cve:`2022-1771`, :cve:`2022-1785`, :cve:`2022-1796`, :cve:`2022-1927`, :cve:`2022-1942`, :cve:`2022-2257`, :cve:`2022-2264`, :cve:`2022-2284`, :cve:`2022-2285`, :cve:`2022-2286`, :cve:`2022-2287`, :cve:`2022-2816`, :cve:`2022-2817`, :cve:`2022-2819`, :cve:`2022-2845`, :cve:`2022-2849`, :cve:`2022-2862`, :cve:`2022-2874`, :cve:`2022-2889`, :cve:`2022-2980`, :cve:`2022-2946`, :cve:`2022-2982`, :cve:`2022-3099`, :cve:`2022-3134`, :cve:`2022-3234`, :cve:`2022-3278`
- zlib: :cve:`2022-37434`
Recipe Upgrades in 4.1
~~~~~~~~~~~~~~~~~~~~~~
- acpica 20211217 -> 20220331
- adwaita-icon-theme 41.0 -> 42.0
- alsa-lib 1.2.6.1 -> 1.2.7.2
- alsa-plugins 1.2.6 -> 1.2.7.1
- alsa-ucm-conf 1.2.6.3 -> 1.2.7.2
- alsa-utils 1.2.6 -> 1.2.7
- asciidoc 10.1.4 -> 10.2.0
- at-spi2-core 2.42.0 -> 2.44.1
- autoconf-archive 2022.02.11 -> 2022.09.03
- base-passwd 3.5.29 -> 3.5.52
- bind 9.18.5 -> 9.18.7
- binutils 2.38 -> 2.39
- boost 1.78.0 -> 1.80.0
- boost-build-native 4.4.1 -> 1.80.0
- btrfs-tools 5.16.2 -> 5.19.1
- cargo 1.59.0 -> 1.63.0
- ccache 4.6 -> 4.6.3
- cmake 3.22.3 -> 3.24.0
- cmake-native 3.22.3 -> 3.24.0
- coreutils 9.0 -> 9.1
- createrepo-c 0.19.0 -> 0.20.1
- cross-localedef-native 2.35 -> 2.36
- curl 7.82.0 -> 7.85.0
- diffoscope 208 -> 221
- dmidecode 3.3 -> 3.4
- dnf 4.11.1 -> 4.14.0
- dos2unix 7.4.2 -> 7.4.3
- dpkg 1.21.4 -> 1.21.9
- dropbear 2020.81 -> 2022.82
- efibootmgr 17 -> 18
- elfutils 0.186 -> 0.187
- ell 0.50 -> 0.53
- enchant2 2.3.2 -> 2.3.3
- erofs-utils 1.4 -> 1.5
- ethtool 5.16 -> 5.19
- eudev 3.2.10 -> 3.2.11
- ffmpeg 5.0.1 -> 5.1.1
- file 5.41 -> 5.43
- flac 1.3.4 -> 1.4.0
- fontconfig 2.13.1 -> 2.14.0
- freetype 2.11.1 -> 2.12.1
- gcc 11.3.0 -> 12.2.0
- gcompat 1.0.0+1.1+gitX (4d6a5156a6eb…) -> 1.0.0+1.1+gitX (c6921a1aa454…)
- gdb 11.2 -> 12.1
- ghostscript 9.55.0 -> 9.56.1
- git 2.35.4 -> 2.37.3
- glibc 2.35 -> 2.36
- glslang 1.3.204.1 -> 1.3.216.0
- gnu-config 20211108+gitX -> 20220525+gitX
- gnu-efi 3.0.14 -> 3.0.15
- gnutls 3.7.4 -> 3.7.7
- go 1.17.13 -> 1.19
- go-helloworld 0.1 (787a929d5a0d…) -> 0.1 (2e68773dfca0…)
- gpgme 1.17.1 -> 1.18.0
- gptfdisk 1.0.8 -> 1.0.9
- harfbuzz 4.0.1 -> 5.1.0
- hdparm 9.63 -> 9.64
- help2man 1.49.1 -> 1.49.2
- hwlatdetect 2.3 -> 2.4
- icu 70.1 -> 71.1
- inetutils 2.2 -> 2.3
- init-system-helpers 1.62 -> 1.64
- iproute2 5.17.0 -> 5.19.0
- iptables 1.8.7 -> 1.8.8
- iw 5.16 -> 5.19
- json-c 0.15 -> 0.16
- kbd 2.4.0 -> 2.5.1
- kea 2.0.2 -> 2.2.0
- kexec-tools 2.0.23 -> 2.0.25
- kmod 29 -> 30
- kmscube git (9f63f359fab1…) -> git (3bf6ee1a0233…)
- less 600 -> 608
- libaio 0.3.112 -> 0.3.113
- libbsd 0.11.5 -> 0.11.6
- libcap-ng 0.8.2 -> 0.8.3
- libcap-ng-python 0.8.2 -> 0.8.3
- libcgroup 2.0.2 -> 3.0.0
- libcomps 0.1.18 -> 0.1.19
- libdnf 0.66.0 -> 0.69.0
- libdrm 2.4.110 -> 2.4.113
- libevdev 1.12.1 -> 1.13.0
- libfontenc 1.1.4 -> 1.1.6
- libgcc 11.3.0 -> 12.2.0
- libgcc-initial 11.3.0 -> 12.2.0
- libgcrypt 1.9.4 -> 1.10.1
- libgfortran 11.3.0 -> 12.2.0
- libgit2 1.4.3 -> 1.5.0
- libgpg-error 1.44 -> 1.45
- libhandy 1.5.0 -> 1.6.3
- libidn2 2.3.2 -> 2.3.3
- libjitterentropy 3.4.0 -> 3.4.1
- libmnl 1.0.4 -> 1.0.5
- libnl 3.5.0 -> 3.7.0
- libnotify 0.7.9 -> 0.8.1
- libpipeline 1.5.5 -> 1.5.6
- libproxy 0.4.17 -> 0.4.18
- librepo 1.14.3 -> 1.14.5
- librsvg 2.52.7 -> 2.54.5
- libsdl2 2.0.20 -> 2.24.0
- libseccomp 2.5.3 -> 2.5.4
- libsndfile1 1.0.31 -> 1.1.0
- libstd-rs 1.59.0 -> 1.63.0
- libtirpc 1.3.2 -> 1.3.3
- libubootenv 0.3.2 -> 0.3.3
- libva 2.14.0 -> 2.15.0
- libva-utils 2.14.0 -> 2.15.0
- libx11 1.7.3.1 -> 1.8.1
- libxau 1.0.9 -> 1.0.10
- libxcb 1.14 -> 1.15
- libxcursor 1.2.0 -> 1.2.1
- libxcvt 0.1.1 -> 0.1.2
- libxfont2 2.0.5 -> 2.0.6
- libxvmc 1.0.12 -> 1.0.13
- linux-libc-headers 5.16 -> 5.19
- linux-yocto 5.10.143+gitX, 5.15.68+gitX -> 5.15.68+gitX, 5.19.9+gitX
- linux-yocto-dev 5.18++gitX -> 5.19++gitX
- linux-yocto-rt 5.10.143+gitX, 5.15.68+gitX -> 5.15.68+gitX, 5.19.9+gitX
- linux-yocto-tiny 5.10.143+gitX, 5.15.68+gitX -> 5.15.68+gitX, 5.19.9+gitX
- llvm 13.0.1 -> 14.0.6
- lsof 4.94.0 -> 4.95.0
- ltp 20220121 -> 20220527
- lttng-tools 2.13.4 -> 2.13.8
- lttng-ust 2.13.3 -> 2.13.4
- mc 4.8.27 -> 4.8.28
- mesa 22.0.3 -> 22.2.0
- mesa-demos 8.4.0 -> 8.5.0
- mesa-gl 22.0.3 -> 22.2.0
- meson 0.61.3 -> 0.63.2
- mmc-utils 0.1+gitX (b7e4d5a6ae99…) -> 0.1+gitX (d7b343fd2628…)
- mpg123 1.29.3 -> 1.30.2
- msmtp 1.8.20 -> 1.8.22
- mtools 4.0.38 -> 4.0.40
- musl 1.2.3+gitX (7a43f6fea908…) -> 1.2.3+gitX (37e18b7bf307…)
- musl-obstack 1.1 -> 1.2
- ncurses 6.3+20220423 (a0bc708bc695…) -> 6.3+20220423 (20db1fb41ec9…)
- neard 0.16 -> 0.18
- nettle 3.7.3 -> 3.8.1
- nfs-utils 2.6.1 -> 2.6.2
- nghttp2 1.47.0 -> 1.49.0
- ninja 1.10.2 -> 1.11.1
- numactl 2.0.14 -> 2.0.15
- ofono 1.34 -> 2.0
- opensbi 1.0 -> 1.1
- openssh 8.9p1 -> 9.0p1
- opkg 0.5.0 -> 0.6.0
- ovmf edk2-stable202202 -> edk2-stable202205
- pango 1.50.4 -> 1.50.9
- parted 3.4 -> 3.5
- patchelf 0.14.5 -> 0.15.0
- pciutils 3.7.0 -> 3.8.0
- perl 5.34.1 -> 5.36.0
- perlcross 1.3.7 -> 1.4
- piglit 1.0+gitrX (2f80c7cc9c02…) -> 1.0+gitrX (265896c86f90…)
- pkgconf 1.8.0 -> 1.9.3
- psmisc 23.4 -> 23.5
- pulseaudio 15.0 -> 16.1
- puzzles 0.0+gitX (c43a34fbfe43…) -> 0.0+gitX (8399cff6a3b9…)
- python3 3.10.4 -> 3.10.6
- python3-atomicwrites 1.4.0 -> 1.4.1
- python3-attrs 21.4.0 -> 22.1.0
- python3-babel 2.9.1 -> 2.10.3
- python3-bcrypt 3.2.0 -> 3.2.2
- python3-certifi 2021.10.8 -> 2022.9.14
- python3-cffi 1.15.0 -> 1.15.1
- python3-chardet 4.0.0 -> 5.0.0
- python3-cryptography 36.0.2 -> 37.0.4
- python3-cryptography-vectors 36.0.2 -> 37.0.4
- python3-cython 0.29.28 -> 0.29.32
- python3-dbusmock 0.27.3 -> 0.28.4
- python3-docutils 0.18.1 -> 0.19
- python3-dtschema 2022.1 -> 2022.8.3
- python3-hypothesis 6.39.5 -> 6.54.5
- python3-idna 3.3 -> 3.4
- python3-imagesize 1.3.0 -> 1.4.1
- python3-importlib-metadata 4.11.3 -> 4.12.0
- python3-jinja2 3.1.1 -> 3.1.2
- python3-jsonpointer 2.2 -> 2.3
- python3-jsonschema 4.4.0 -> 4.9.1
- python3-magic 0.4.25 -> 0.4.27
- python3-mako 1.1.6 -> 1.2.2
- python3-markdown 3.3.6 -> 3.4.1
- python3-more-itertools 8.12.0 -> 8.14.0
- python3-numpy 1.22.3 -> 1.23.3
- python3-pbr 5.8.1 -> 5.10.0
- python3-pip 22.0.3 -> 22.2.2
- python3-psutil 5.9.0 -> 5.9.2
- python3-pycryptodome 3.14.1 -> 3.15.0
- python3-pycryptodomex 3.14.1 -> 3.15.0
- python3-pyelftools 0.28 -> 0.29
- python3-pygments 2.11.2 -> 2.13.0
- python3-pygobject 3.42.0 -> 3.42.2
- python3-pyparsing 3.0.7 -> 3.0.9
- python3-pytest 7.1.1 -> 7.1.3
- python3-pytest-subtests 0.7.0 -> 0.8.0
- python3-pytz 2022.1 -> 2022.2.1
- python3-requests 2.27.1 -> 2.28.1
- python3-scons 4.3.0 -> 4.4.0
- python3-semantic-version 2.9.0 -> 2.10.0
- python3-setuptools 59.5.0 -> 65.0.2
- python3-setuptools-scm 6.4.2 -> 7.0.5
- python3-sphinx 4.4.0 -> 5.1.1
- python3-sphinx-rtd-theme 0.5.0 -> 1.0.0
- python3-typing-extensions 3.10.0.0 -> 4.3.0
- python3-urllib3 1.26.9 -> 1.26.12
- python3-webcolors 1.11.1 -> 1.12
- python3-zipp 3.7.0 -> 3.8.1
- qemu 6.2.0 -> 7.1.0
- repo 2.22 -> 2.29.2
- rpm 4.17.0 -> 4.18.0
- rsync 3.2.3 -> 3.2.5
- rt-tests 2.3 -> 2.4
- rust 1.59.0 -> 1.63.0
- rust-llvm 1.59.0 -> 1.63.0
- sbc 1.5 -> 2.0
- seatd 0.6.4 -> 0.7.0
- shaderc 2022.1 -> 2022.2
- shadow 4.11.1 -> 4.12.1
- shared-mime-info 2.1 -> 2.2
- slang 2.3.2 -> 2.3.3
- speex 1.2.0 -> 1.2.1
- speexdsp 1.2.0 -> 1.2.1
- spirv-headers 1.3.204.1 -> 1.3.216.0
- spirv-tools 1.3.204.1 -> 1.3.216.0
- sqlite3 3.38.5 -> 3.39.3
- squashfs-tools 4.5 -> 4.5.1
- strace 5.16 -> 5.19
- stress-ng 0.13.12 -> 0.14.03
- sudo 1.9.10 -> 1.9.11p3
- sysklogd 2.3.0 -> 2.4.4
- sysstat 12.4.5 -> 12.6.0
- systemd 250.5 -> 251.4
- systemd-boot 250.5 -> 251.4
- systemtap 4.6 -> 4.7
- systemtap-native 4.6 -> 4.7
- systemtap-uprobes 4.6 -> 4.7
- sysvinit 3.01 -> 3.04
- tiff 4.3.0 -> 4.4.0
- tzcode-native 2022c -> 2022d
- tzdata 2022c -> 2022d
- u-boot 2022.01 -> 2022.07
- u-boot-tools 2022.01 -> 2022.07
- util-linux 2.37.4 -> 2.38.1
- util-linux-libuuid 2.37.4 -> 2.38.1
- valgrind 3.18.1 -> 3.19.0
- vim 9.0.0541 -> 9.0.0598
- vim-tiny 9.0.0541 -> 9.0.0598
- virglrenderer 0.9.1 -> 0.10.3
- vte 0.66.2 -> 0.68.0
- vulkan-headers 1.3.204.1 -> 1.3.216.0
- vulkan-loader 1.3.204.1 -> 1.3.216.0
- vulkan-samples git (28ca2dad83ce…) -> git (74d45aace02d…)
- vulkan-tools 1.3.204.1 -> 1.3.216.0
- wayland 1.20.0 -> 1.21.0
- wayland-protocols 1.25 -> 1.26
- webkitgtk 2.36.5 -> 2.36.7
- x264 r3039+gitX (5db6aa6cab1b…) -> r3039+gitX (baee400fa9ce…)
- xauth 1.1.1 -> 1.1.2
- xcb-proto 1.14.1 -> 1.15.2
- xf86-video-cirrus 1.5.3 -> 1.6.0
- xkeyboard-config 2.35.1 -> 2.36
- xmlto 0.0.28 -> 0.0.28+0.0.29+gitX
- xorgproto 2021.5 -> 2022.2
- zlib 1.2.11 -> 1.2.12
Contributors to 4.1
~~~~~~~~~~~~~~~~~~~
Thanks to the following people who contributed to this release:
- Aatir Manzur
- Ahmed Hossam
- Alejandro Hernandez Samaniego
- Alexander Kanavin
- Alexandre Belloni
- Alex Kiernan
- Alex Stewart
- Andrei Gherzan
- Andrej Valek
- Andrey Konovalov
- Aníbal Limón
- Anuj Mittal
- Arkadiusz Drabczyk
- Armin Kuster
- Aryaman Gupta
- Awais Belal
- Beniamin Sandu
- Bertrand Marquis
- Bob Henz
- Bruce Ashfield
- Carlos Rafael Giani
- Changhyeok Bae
- Changqing Li
- Chanho Park
- Chen Qi
- Christoph Lauer
- Claudius Heine
- Daiane Angolini
- Daniel Gomez
- Daniel McGregor
- David Bagonyi
- Davide Gardenal
- Denys Dmytriyenko
- Dmitry Baryshkov
- Drew Moseley
- Enrico Scholz
- Ernst Sjöstrand
- Etienne Cordonnier
- Fabio Estevam
- Federico Pellegrin
- Felix Moessbauer
- Ferry Toth
- Florin Diaconescu
- Gennaro Iorio
- Grygorii Tertychnyi
- Gunjan Gupta
- Henning Schild
- He Zhe
- Hitendra Prajapati
- Jack Mitchell
- Jacob Kroon
- Jan Kiszka
- Jan Luebbe
- Jan Vermaete
- Jasper Orschulko
- JeongBong Seo
- Jeremy Puhlman
- Jiaqing Zhao
- Joerg Vehlow
- Johan Korsnes
- Johannes Schneider
- John Edward Broadbent
- Jon Mason
- Jose Quaresma
- Joshua Watt
- Justin Bronder
- Kai Kang
- Kevin Hao
- Khem Raj
- Konrad Weihmann
- Kory Maincent
- Kristian Amlie
- Lee Chee Yang
- Lei Maohui
- Leon Anavi
- Luca Ceresoli
- Lucas Stach
- LUIS ENRIQUEZ
- Marcel Ziswiler
- Marius Kriegerowski
- Mark Hatle
- Markus Volk
- Marta Rybczynska
- Martin Beeger
- Martin Jansa
- Mateusz Marciniec
- Mattias Jernberg
- Matt Madison
- Maxime Roussin-Bélanger
- Michael Halstead
- Michael Opdenacker
- Mihai Lindner
- Mikko Rapeli
- Ming Liu
- Mingli Yu
- Muhammad Hamza
- Naveen Saini
- Neil Horman
- Nick Potenski
- Nicolas Dechesne
- Niko Mauno
- Ola x Nilsson
- Otavio Salvador
- Pascal Bach
- Paul Eggleton
- Paul Gortmaker
- Paulo Neves
- Pavel Zhukov
- Peter Bergin
- Peter Kjellerstedt
- Peter Marko
- Petr Vorel
- Pgowda
- Portia Stephens
- Quentin Schulz
- Rahul Kumar
- Raju Kumar Pothuraju
- Randy MacLeod
- Raphael Teller
- Rasmus Villemoes
- Ricardo Salveti
- Richard Purdie
- Robert Joslyn
- Robert Yang
- Roland Hieber
- Ross Burton
- Rouven Czerwinski
- Ruiqiang Hao
- Russ Dill
- Rusty Howell
- Sakib Sajal
- Samuli Piippo
- Schmidt, Adriaan
- Sean Anderson
- Shruthi Ravichandran
- Shubham Kulkarni
- Simone Weiss
- Sebastian Suesens
- Stefan Herbrechtsmeier
- Stefano Babic
- Stefan Wiehler
- Steve Sakoman
- Sundeep KOKKONDA
- Teoh Jay Shen
- Thomas Epperson
- Thomas Perrot
- Thomas Roos
- Tobias Schmidl
- Tomasz Dziendzielski
- Tom Hochstein
- Tom Rini
- Trevor Woerner
- Ulrich Ölmann
- Vyacheslav Yurkov
- Wang Mingyu
- William A. Kennington III
- Xiaobing Luo
- Xu Huan
- Yang Xu
- Yi Zhao
- Yogesh Tyagi
- Yongxin Liu
- Yue Tao
- Yulong (Kevin) Liu
- Zach Welch
- Zheng Ruoqin
- Zoltán Böszörményi
Repositories / Downloads for 4.1
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poky
- Repository Location: https://git.yoctoproject.org/git/poky
- Branch: :yocto_git:`langdale </poky/log/?h=langdale>`
- Tag: :yocto_git:`yocto-4.1 </poky/log/?h=yocto-4.1>`
- Git Revision: :yocto_git:`5200799866b92259e855051112520006e1aaaac0 </poky/commit/?id=5200799866b92259e855051112520006e1aaaac0>`
- Release Artefact: poky-5200799866b92259e855051112520006e1aaaac0
- sha: 9d9a2f7ecf2502f89f43bf45d63e6b61cdcb95ed1d75c8281372f550d809c823
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-4.1/poky-5200799866b92259e855051112520006e1aaaac0.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-4.1/poky-5200799866b92259e855051112520006e1aaaac0.tar.bz2
openembedded-core
- Repository Location: https://git.openembedded.org/openembedded-core
- Branch: :oe_git:`langdale </openembedded-core/log/?h=langdale>`
- Tag: :oe_git:`yocto-4.1 </openembedded-core/log/?h=yocto-4.1>`
- Git Revision: :oe_git:`744a2277844ec9a384a9ca7dae2a634d5a0d3590 </openembedded-core/commit/?id=744a2277844ec9a384a9ca7dae2a634d5a0d3590>`
- Release Artefact: oecore-744a2277844ec9a384a9ca7dae2a634d5a0d3590
- sha: 34f1fd5bb83514bf0ec8ad7f8cce088a8e28677e1338db94c188283da704c663
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-4.1/oecore-744a2277844ec9a384a9ca7dae2a634d5a0d3590.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-4.1/oecore-744a2277844ec9a384a9ca7dae2a634d5a0d3590.tar.bz2
meta-mingw
- Repository Location: https://git.yoctoproject.org/git/meta-mingw
- Branch: :yocto_git:`langdale </meta-mingw/log/?h=langdale>`
- Tag: :yocto_git:`yocto-4.1 </meta-mingw/log/?h=yocto-4.1>`
- Git Revision: :yocto_git:`b0067202db8573df3d23d199f82987cebe1bee2c </meta-mingw/commit/?id=b0067202db8573df3d23d199f82987cebe1bee2c>`
- Release Artefact: meta-mingw-b0067202db8573df3d23d199f82987cebe1bee2c
- sha: 704f2940322b81ce774e9cbd27c3cfa843111d497dc7b1eeaa39cd694d9a2366
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-4.1/meta-mingw-b0067202db8573df3d23d199f82987cebe1bee2c.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-4.1/meta-mingw-b0067202db8573df3d23d199f82987cebe1bee2c.tar.bz2
bitbake
- Repository Location: https://git.openembedded.org/bitbake
- Branch: :oe_git:`2.2 </bitbake/log/?h=2.2>`
- Tag: :oe_git:`yocto-4.1 </bitbake/log/?h=yocto-4.1>`
- Git Revision: :oe_git:`074da4c469d1f4177a1c5be72b9f3ccdfd379d67 </bitbake/commit/?id=074da4c469d1f4177a1c5be72b9f3ccdfd379d67>`
- Release Artefact: bitbake-074da4c469d1f4177a1c5be72b9f3ccdfd379d67
- sha: e32c300e0c8522d8d49ef10aae473bd5f293202672eb9d38e90ed92594ed1fe8
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-4.1/bitbake-074da4c469d1f4177a1c5be72b9f3ccdfd379d67.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-4.1/bitbake-074da4c469d1f4177a1c5be72b9f3ccdfd379d67.tar.bz2
yocto-docs
- Repository Location: https://git.yoctoproject.org/git/yocto-docs
- Branch: :yocto_git:`langdale </yocto-docs/log/?h=langdale>`
- Tag: :yocto_git:`yocto-4.1 </yocto-docs/log/?h=yocto-4.1>`
- Git Revision: :yocto_git:`42d3e26a0d04bc5951e640b471686f347dc9b74a </yocto-docs/commit/?id=42d3e26a0d04bc5951e640b471686f347dc9b74a>`

View File

@@ -703,16 +703,12 @@ the source files and unpack them into the
.. note::
For every local file (e.g.
file://
) that is part of a recipe's
SRC_URI
statement, the OpenEmbedded build system takes a checksum of the file
for the recipe and inserts the checksum into the signature for the
do_fetch
task. If any local file has been modified, the
do_fetch
task and all tasks that depend on it are re-executed.
For every local file (e.g. ``file://``) that is part of a recipe's
:term:`SRC_URI` statement, the OpenEmbedded build system takes a
checksum of the file for the recipe and inserts the checksum into
the signature for the :ref:`ref-tasks-fetch` task. If any local
file has been modified, the :ref:`ref-tasks-fetch` task and all
tasks that depend on it are re-executed.
By default, everything is accomplished in the Build Directory, which has
a defined structure. For additional general information on the Build
@@ -857,7 +853,7 @@ This step in the build process consists of the following tasks:
variables. For information on how this variable works within that
class, see the
:ref:`autotools <ref-classes-autotools>` class
:yocto_git:`here </poky/tree/meta/classes/autotools.bbclass>`.
:yocto_git:`here </poky/tree/meta/classes-recipe/autotools.bbclass>`.
- *do_compile*: Once a configuration task has been satisfied,
BitBake compiles the source using the
@@ -892,7 +888,7 @@ following as well as other items: splitting out debugging symbols,
looking at shared library dependencies between packages, and looking at
package relationships.
The ``do_packagedata`` task creates package metadata based on the
The :ref:`ref-tasks-packagedata` task creates package metadata based on the
analysis such that the build system can generate the final packages. The
:ref:`ref-tasks-populate_sysroot`
task stages (copies) a subset of the files installed by the
@@ -905,7 +901,7 @@ the analysis and package splitting process use several areas:
individual packages.
- :term:`PKGDESTWORK`: A
temporary work area (i.e. ``pkgdata``) used by the ``do_package``
temporary work area (i.e. ``pkgdata``) used by the :ref:`ref-tasks-package`
task to save package metadata.
- :term:`PKGDEST`: The parent
@@ -935,7 +931,7 @@ The :term:`FILES` variable defines the
files that go into each package in
:term:`PACKAGES`. If you want
details on how this is accomplished, you can look at
:yocto_git:`package.bbclass </poky/tree/meta/classes/package.bbclass>`.
:yocto_git:`package.bbclass </poky/tree/meta/classes-global/package.bbclass>`.
Depending on the type of packages being created (RPM, DEB, or IPK), the
:ref:`do_package_write_* <ref-tasks-package_write_deb>`
@@ -1012,13 +1008,13 @@ all the post installation scripts must succeed on the build host during
the package installation phase since the root filesystem on the target
is read-only.
The final stages of the ``do_rootfs`` task handle post processing. Post
The final stages of the :ref:`ref-tasks-rootfs` task handle post processing. Post
processing includes creation of a manifest file and optimizations.
The manifest file (``.manifest``) resides in the same directory as the
root filesystem image. This file lists out, line-by-line, the installed
packages. The manifest file is useful for the
:ref:`testimage <ref-classes-testimage*>` class,
:ref:`testimage <ref-classes-testimage>` class,
for example, to determine whether or not to run specific tests. See the
:term:`IMAGE_MANIFEST`
variable for additional information.
@@ -1036,7 +1032,7 @@ the
variable. This variable specifies a list of functions to call before the
build system creates the final image output files.
The build system dynamically creates ``do_image_*`` tasks as needed,
The build system dynamically creates :ref:`do_image_* <ref-tasks-image>` tasks as needed,
based on the image types specified in the
:term:`IMAGE_FSTYPES` variable.
The process turns everything into an image file or a set of image files
@@ -1085,7 +1081,7 @@ the extensible SDK (eSDK):
For more information on the cross-development toolchain generation,
see the ":ref:`overview-manual/concepts:cross-development toolchain generation`"
section. For information on advantages gained when building a
cross-development toolchain using the do_populate_sdk task, see the
cross-development toolchain using the :ref:`ref-tasks-populate_sdk` task, see the
":ref:`sdk-manual/appendix-obtain:building an sdk installer`" section in
the Yocto Project Application Development and the Extensible Software
Development Kit (eSDK) manual.
@@ -1100,13 +1096,13 @@ actually install. For information on the variables listed in the figure,
see the ":ref:`overview-manual/concepts:application development sdk`"
section.
The ``do_populate_sdk`` task helps create the standard SDK and handles
The :ref:`ref-tasks-populate_sdk` task helps create the standard SDK and handles
two parts: a target part and a host part. The target part is the part
built for the target hardware and includes libraries and headers. The
host part is the part of the SDK that runs on the
:term:`SDKMACHINE`.
The ``do_populate_sdk_ext`` task helps create the extensible SDK and
The :ref:`ref-tasks-populate_sdk_ext` task helps create the extensible SDK and
handles host and target parts differently than its counter part does for
the standard SDK. For the extensible SDK, the task encapsulates the
build system, which includes everything needed (host and target) for the
@@ -1198,7 +1194,7 @@ the work involved would be equal to or greater than the underlying task.
In the build system, the common tasks that have setscene variants are
:ref:`ref-tasks-package`,
``do_package_write_*``,
:ref:`do_package_write_* <ref-tasks-package_write_deb>`,
:ref:`ref-tasks-deploy`,
:ref:`ref-tasks-packagedata`, and
:ref:`ref-tasks-populate_sysroot`.
@@ -1208,15 +1204,15 @@ end result.
The build system has knowledge of the relationship between these tasks
and other preceding tasks. For example, if BitBake runs
``do_populate_sysroot_setscene`` for something, it does not make sense
to run any of the ``do_fetch``, ``do_unpack``, ``do_patch``,
``do_configure``, ``do_compile``, and ``do_install`` tasks. However, if
``do_package`` needs to be run, BitBake needs to run those other tasks.
to run any of the :ref:`ref-tasks-fetch`, :ref:`ref-tasks-unpack`, :ref:`ref-tasks-patch`,
:ref:`ref-tasks-configure`, :ref:`ref-tasks-compile`, and :ref:`ref-tasks-install` tasks. However, if
:ref:`ref-tasks-package` needs to be run, BitBake needs to run those other tasks.
It becomes more complicated if everything can come from an sstate cache
because some objects are simply not required at all. For example, you do
not need a compiler or native tools, such as quilt, if there isn't anything
to compile or patch. If the ``do_package_write_*`` packages are available
from sstate, BitBake does not need the ``do_package`` task data.
to compile or patch. If the :ref:`do_package_write_* <ref-tasks-package_write_deb>` packages are available
from sstate, BitBake does not need the :ref:`ref-tasks-package` task data.
To handle all these complexities, BitBake runs in two phases. The first
is the "setscene" stage. During this stage, BitBake first checks the
@@ -1435,7 +1431,7 @@ toolchain construction and use.
:width: 100%
Most of the work occurs on the Build Host. This is the machine used to
build images and generally work within the the Yocto Project
build images and generally work within the Yocto Project
environment. When you run
:term:`BitBake` to create an image, the
OpenEmbedded build system uses the host ``gcc`` compiler to bootstrap a
@@ -1801,14 +1797,14 @@ from the :ref:`deploy <ref-classes-deploy>` class::
The following list explains the previous example:
- Adding "do_deploy" to ``SSTATETASKS`` adds some required
- Adding ``do_deploy`` to ``SSTATETASKS`` adds some required
sstate-related processing, which is implemented in the
:ref:`sstate <ref-classes-sstate>` class, to
before and after the
:ref:`ref-tasks-deploy` task.
- The ``do_deploy[sstate-inputdirs] = "${DEPLOYDIR}"`` declares that
``do_deploy`` places its output in ``${DEPLOYDIR}`` when run normally
:ref:`ref-tasks-deploy` places its output in ``${DEPLOYDIR}`` when run normally
(i.e. when not using the sstate cache). This output becomes the input
to the shared state cache.
@@ -1818,15 +1814,15 @@ The following list explains the previous example:
.. note::
If ``do_deploy`` is not already in the shared state cache or if its input
If :ref:`ref-tasks-deploy` is not already in the shared state cache or if its input
checksum (signature) has changed from when the output was cached, the task
runs to populate the shared state cache, after which the contents of the
shared state cache is copied to ${:term:`DEPLOY_DIR_IMAGE`}. If
``do_deploy`` is in the shared state cache and its signature indicates
:ref:`ref-tasks-deploy` is in the shared state cache and its signature indicates
that the cached output is still valid (i.e. if no relevant task inputs
have changed), then the contents of the shared state cache copies
directly to ${:term:`DEPLOY_DIR_IMAGE`} by the ``do_deploy_setscene`` task
instead, skipping the ``do_deploy`` task.
instead, skipping the :ref:`ref-tasks-deploy` task.
- The following task definition is glue logic needed to make the
previous settings effective::
@@ -1836,16 +1832,16 @@ The following list explains the previous example:
}
addtask do_deploy_setscene
``sstate_setscene()`` takes the flags above as input and accelerates the ``do_deploy`` task
``sstate_setscene()`` takes the flags above as input and accelerates the :ref:`ref-tasks-deploy` task
through the shared state cache if possible. If the task was
accelerated, ``sstate_setscene()`` returns True. Otherwise, it
returns False, and the normal ``do_deploy`` task runs. For more
returns False, and the normal :ref:`ref-tasks-deploy` task runs. For more
information, see the ":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-execution:setscene`"
section in the BitBake User Manual.
- The ``do_deploy[dirs] = "${DEPLOYDIR} ${B}"`` line creates
``${DEPLOYDIR}`` and ``${B}`` before the ``do_deploy`` task runs, and
also sets the current working directory of ``do_deploy`` to ``${B}``.
``${DEPLOYDIR}`` and ``${B}`` before the :ref:`ref-tasks-deploy` task runs, and
also sets the current working directory of :ref:`ref-tasks-deploy` to ``${B}``.
For more information, see the ":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:variable flags`"
section in the BitBake
User Manual.
@@ -1854,7 +1850,7 @@ The following list explains the previous example:
In cases where ``sstate-inputdirs`` and ``sstate-outputdirs`` would be
the same, you can use ``sstate-plaindirs``. For example, to preserve the
${:term:`PKGD`} and ${:term:`PKGDEST`} output from the ``do_package``
${:term:`PKGD`} and ${:term:`PKGDEST`} output from the :ref:`ref-tasks-package`
task, use the following::
do_package[sstate-plaindirs] = "${PKGD} ${PKGDEST}"
@@ -2101,12 +2097,12 @@ dependencies, you must manually declare the dependencies.
:term:`PRIVATE_LIBS` inside
the package's recipe.
- ``pcdeps``: During the ``do_package`` task of each recipe, all
- ``pcdeps``: During the :ref:`ref-tasks-package` task of each recipe, all
pkg-config modules (``*.pc`` files) installed by the recipe are
located. For each module, the package that contains the module is
registered as providing the module. The resulting module-to-package
mapping is saved globally in :term:`PKGDATA_DIR` by the
``do_packagedata`` task.
:ref:`ref-tasks-packagedata` task.
Simultaneously, all pkg-config modules installed by the recipe are
inspected to see what other pkg-config modules they depend on. A
@@ -2147,7 +2143,7 @@ dependencies, you must manually declare the dependencies.
:term:`ALLOW_EMPTY` variable
for more information.
The ``do_package`` task depends on the ``do_packagedata`` task of each
The :ref:`ref-tasks-package` task depends on the :ref:`ref-tasks-packagedata` task of each
recipe in :term:`DEPENDS` through use
of a ``[``\ :ref:`deptask <bitbake:bitbake-user-manual/bitbake-user-manual-metadata:variable flags>`\ ``]``
declaration, which guarantees that the required
@@ -2162,8 +2158,8 @@ operations that are normally reserved for the root user (e.g.
:ref:`ref-tasks-install`,
:ref:`do_package_write* <ref-tasks-package_write_deb>`,
:ref:`ref-tasks-rootfs`, and
:ref:`do_image* <ref-tasks-image>`). For example,
the ``do_install`` task benefits from being able to set the UID and GID
:ref:`do_image_* <ref-tasks-image>`). For example,
the :ref:`ref-tasks-install` task benefits from being able to set the UID and GID
of installed files to arbitrary values.
One approach to allowing tasks to perform root-only operations would be

View File

@@ -584,20 +584,15 @@ Build Host runs, you have several choices.
":ref:`dev-manual/start:setting up to use cross platforms (crops)`"
section in the Yocto Project Development Tasks Manual.
- *Windows Subsystem For Linux (WSLv2):* You may use Windows Subsystem
For Linux v2 to set up a Build Host using Windows 10.
- *Windows Subsystem For Linux (WSL 2):* You may use Windows Subsystem
For Linux version 2 to set up a Build Host using Windows 10 or later,
or Windows Server 2019 or later.
.. note::
The Yocto Project is not compatible with WSLv1, it is compatible
but not officially supported nor validated with WSLv2, if you
still decide to use WSL please upgrade to WSLv2.
The Windows Subsystem For Linux allows Windows 10 to run a real Linux
The Windows Subsystem For Linux allows Windows to run a real Linux
kernel inside of a lightweight virtual machine (VM).
For information on how to set up a Build Host with WSLv2, see the
":ref:`dev-manual/start:setting up to use windows subsystem for linux (wslv2)`"
For information on how to set up a Build Host with WSL 2, see the
":ref:`dev-manual/start:setting up to use windows subsystem for linux (wsl 2)`"
section in the Yocto Project Development Tasks Manual.
- *Toaster:* Regardless of what your Build Host is running, you can use

View File

@@ -1,10 +1,10 @@
DISTRO : "4.0"
DISTRO_NAME_NO_CAP : "kirkstone"
DISTRO_NAME : "Kirkstone"
DISTRO_NAME_NO_CAP_MINUS_ONE : "honister"
DISTRO_NAME_NO_CAP_LTS : "dunfell"
YOCTO_DOC_VERSION : "4.0"
DISTRO_REL_TAG : "yocto-4.0"
DISTRO : "4.1"
DISTRO_NAME_NO_CAP : "langdale"
DISTRO_NAME : "Langdale"
DISTRO_NAME_NO_CAP_MINUS_ONE : "kirkstone"
DISTRO_NAME_NO_CAP_LTS : "kirkstone"
YOCTO_DOC_VERSION : "4.1"
DISTRO_REL_TAG : "yocto-4.1"
DOCCONF_VERSION : "dev"
BITBAKE_SERIES : ""
YOCTO_DL_URL : "https://downloads.yoctoproject.org"

File diff suppressed because it is too large Load Diff

View File

@@ -4,9 +4,15 @@
FAQ
***
**Q:** How does Poky differ from :oe_home:`OpenEmbedded <>`?
.. contents::
**A:** The term ``Poky`` refers to the specific reference build
General questions
=================
How does Poky differ from OpenEmbedded?
---------------------------------------
The term ``Poky`` refers to the specific reference build
system that the Yocto Project provides. Poky is based on
:term:`OpenEmbedded-Core (OE-Core)` and :term:`BitBake`. Thus, the
generic term used here for the build system is the "OpenEmbedded build
@@ -15,19 +21,10 @@ OpenEmbedded, with changes always being merged to OE-Core or BitBake
first before being pulled back into Poky. This practice benefits both
projects immediately.
**Q:** My development system does not meet the required Git, tar, and
Python versions. In particular, I do not have Python &MIN_PYTHON_VERSION; or greater.
Can I still use the Yocto Project?
How can you claim Poky / OpenEmbedded-Core is stable?
-----------------------------------------------------
**A:** You can get the required tools on your host development system a
couple different ways (i.e. building a tarball or downloading a
tarball). See the
":ref:`ref-manual/system-requirements:required git, tar, python, make and gcc versions`"
section for steps on how to update your build tools.
**Q:** How can you claim Poky / OpenEmbedded-Core is stable?
**A:** There are three areas that help with stability;
There are three areas that help with stability;
- The Yocto Project team keeps :term:`OpenEmbedded-Core (OE-Core)` small and
focused, containing around 830 recipes as opposed to the thousands
@@ -37,253 +34,33 @@ section for steps on how to update your build tools.
- The Yocto Project team runs manual and automated tests using a small,
fixed set of reference hardware as well as emulated targets.
- The Yocto Project uses an autobuilder, which provides continuous
build and integration tests.
- The Yocto Project uses an :yocto_ab:`autobuilder <>`, which provides
continuous build and integration tests.
**Q:** How do I get support for my board added to the Yocto Project?
Are there any products built using the OpenEmbedded build system?
-----------------------------------------------------------------
**A:** Support for an additional board is added by creating a Board
Support Package (BSP) layer for it. For more information on how to
create a BSP layer, see the
":ref:`dev-manual/common-tasks:understanding and creating layers`"
section in the Yocto Project Development Tasks Manual and the
:doc:`/bsp-guide/index`.
See :yocto_wiki:`Products that use the Yocto Project
</Project_Users#Products_that_use_the_Yocto_Project>` in the Yocto Project
Wiki. Don't hesitate to contribute to this page if you know other such
products.
Usually, if the board is not completely exotic, adding support in the
Yocto Project is fairly straightforward.
Building environment
====================
**Q:** Are there any products built using the OpenEmbedded build system?
Missing dependencies on the development system?
-----------------------------------------------
**A:** The software running on the `Vernier
LabQuest <https://vernier.com/labquest/>`__ is built using the
OpenEmbedded build system. See the `Vernier
LabQuest <https://www.vernier.com/products/interfaces/labq/>`__ website
for more information. There are a number of pre-production devices using
the OpenEmbedded build system and the Yocto Project team announces them
as soon as they are released.
If your development system does not meet the required Git, tar, and
Python versions, you can get the required tools on your host development
system in different ways (i.e. building a tarball or downloading a
tarball). See the ":ref:`ref-manual/system-requirements:required git, tar, python, make and gcc versions`"
section for steps on how to update your build tools.
**Q:** What does the OpenEmbedded build system produce as output?
How does OpenEmbedded fetch source code? Will it work through a firewall or proxy server?
-----------------------------------------------------------------------------------------
**A:** Because you can use the same set of recipes to create output of
various formats, the output of an OpenEmbedded build depends on how you
start it. Usually, the output is a flashable image ready for the target
device.
**Q:** How do I add my package to the Yocto Project?
**A:** To add a package, you need to create a BitBake recipe. For
information on how to create a BitBake recipe, see the
":ref:`dev-manual/common-tasks:writing a new recipe`"
section in the Yocto Project Development Tasks Manual.
**Q:** Do I have to reflash my entire board with a new Yocto Project
image when recompiling a package?
**A:** The OpenEmbedded build system can build packages in various
formats such as IPK for OPKG, Debian package (``.deb``), or RPM. You can
then upgrade the packages using the package tools on the device, much
like on a desktop distribution such as Ubuntu or Fedora. However,
package management on the target is entirely optional.
**Q:** I see the error
'``chmod: XXXXX new permissions are r-xrwxrwx, not r-xr-xr-x``'. What is
wrong?
**A:** You are probably running the build on an NTFS filesystem. Use
``ext2``, ``ext3``, or ``ext4`` instead.
**Q:** I see lots of 404 responses for files when the OpenEmbedded build
system is trying to download sources. Is something wrong?
**A:** Nothing is wrong. The OpenEmbedded build system checks any
configured source mirrors before downloading from the upstream sources.
The build system does this searching for both source archives and
pre-checked out versions of SCM-managed software. These checks help in
large installations because it can reduce load on the SCM servers
themselves. The address above is one of the default mirrors configured
into the build system. Consequently, if an upstream source disappears,
the team can place sources there so builds continue to work.
**Q:** I have machine-specific data in a package for one machine only
but the package is being marked as machine-specific in all cases, how do
I prevent this?
**A:** Set :term:`SRC_URI_OVERRIDES_PACKAGE_ARCH` = "0" in the ``.bb`` file
but make sure the package is manually marked as machine-specific for the
case that needs it. The code that handles
:term:`SRC_URI_OVERRIDES_PACKAGE_ARCH` is in the
``meta/classes/base.bbclass`` file.
**Q:** I'm behind a firewall and need to use a proxy server. How do I do
that?
**A:** Most source fetching by the OpenEmbedded build system is done by
``wget`` and you therefore need to specify the proxy settings in a
``.wgetrc`` file, which can be in your home directory if you are a
single user or can be in ``/usr/local/etc/wgetrc`` as a global user
file.
Following is the applicable code for setting various proxy types in the
``.wgetrc`` file. By default, these settings are disabled with comments.
To use them, remove the comments::
# You can set the default proxies for Wget to use for http, https, and ftp.
# They will override the value in the environment.
#https_proxy = http://proxy.yoyodyne.com:18023/
#http_proxy = http://proxy.yoyodyne.com:18023/
#ftp_proxy = http://proxy.yoyodyne.com:18023/
# If you do not want to use proxy at all, set this to off.
#use_proxy = on
The Yocto Project also includes a
``meta-poky/conf/templates/default/site.conf.sample`` file that shows
how to configure CVS and Git proxy servers if needed. For more
information on setting up various proxy types and configuring proxy
servers, see the
":yocto_wiki:`Working Behind a Network Proxy </Working_Behind_a_Network_Proxy>`"
Wiki page.
**Q:** What's the difference between ``target`` and ``target-native``?
**A:** The ``*-native`` targets are designed to run on the system being
used for the build. These are usually tools that are needed to assist
the build in some way such as ``quilt-native``, which is used to apply
patches. The non-native version is the one that runs on the target
device.
**Q:** I'm seeing random build failures. Help?!
**A:** If the same build is failing in totally different and random
ways, the most likely explanation is:
- The hardware you are running the build on has some problem.
- You are running the build under virtualization, in which case the
virtualization probably has bugs.
The OpenEmbedded build system processes a massive amount of data that
causes lots of network, disk and CPU activity and is sensitive to even
single-bit failures in any of these areas. True random failures have
always been traced back to hardware or virtualization issues.
**Q:** When I try to build a native recipe, the build fails with
``iconv.h`` problems.
**A:** If you get an error message that indicates GNU ``libiconv`` is
not in use but ``iconv.h`` has been included from ``libiconv``, you need
to check to see if you have a previously installed version of the header
file in ``/usr/local/include``.
::
#error GNU libiconv not in use but included iconv.h is from libiconv
If you find a previously installed
file, you should either uninstall it or temporarily rename it and try
the build again.
This issue is just a single manifestation of "system leakage" issues
caused when the OpenEmbedded build system finds and uses previously
installed files during a native build. This type of issue might not be
limited to ``iconv.h``. Be sure that leakage cannot occur from
``/usr/local/include`` and ``/opt`` locations.
**Q:** What do we need to ship for license compliance?
**A:** This is a difficult question and you need to consult your lawyer
for the answer for your specific case. It is worth bearing in mind that
for GPL compliance, there needs to be enough information shipped to
allow someone else to rebuild and produce the same end result you are
shipping. This means sharing the source code, any patches applied to it,
and also any configuration information about how that package was
configured and built.
You can find more information on licensing in the
":ref:`overview-manual/development-environment:licensing`"
section in the Yocto
Project Overview and Concepts Manual and also in the
":ref:`dev-manual/common-tasks:maintaining open source license compliance during your product's lifecycle`"
section in the Yocto Project Development Tasks Manual.
**Q:** How do I disable the cursor on my touchscreen device?
**A:** You need to create a form factor file as described in the
":ref:`bsp-guide/bsp:miscellaneous bsp-specific recipe files`" section in
the Yocto Project Board Support Packages (BSP) Developer's Guide. Set
the ``HAVE_TOUCHSCREEN`` variable equal to one as follows::
HAVE_TOUCHSCREEN=1
**Q:** How do I make sure connected network interfaces are brought up by
default?
**A:** The default interfaces file provided by the netbase recipe does
not automatically bring up network interfaces. Therefore, you will need
to add a BSP-specific netbase that includes an interfaces file. See the
":ref:`bsp-guide/bsp:miscellaneous bsp-specific recipe files`" section in
the Yocto Project Board Support Packages (BSP) Developer's Guide for
information on creating these types of miscellaneous recipe files.
For example, add the following files to your layer::
meta-MACHINE/recipes-bsp/netbase/netbase/MACHINE/interfaces
meta-MACHINE/recipes-bsp/netbase/netbase_5.0.bbappend
**Q:** How do I create images with more free space?
**A:** By default, the OpenEmbedded build system creates images that are
1.3 times the size of the populated root filesystem. To affect the image
size, you need to set various configurations:
- *Image Size:* The OpenEmbedded build system uses the
:term:`IMAGE_ROOTFS_SIZE` variable to define
the size of the image in Kbytes. The build system determines the size
by taking into account the initial root filesystem size before any
modifications such as requested size for the image and any requested
additional free disk space to be added to the image.
- *Overhead:* Use the
:term:`IMAGE_OVERHEAD_FACTOR` variable
to define the multiplier that the build system applies to the initial
image size, which is 1.3 by default.
- *Additional Free Space:* Use the
:term:`IMAGE_ROOTFS_EXTRA_SPACE`
variable to add additional free space to the image. The build system
adds this space to the image after it determines its
:term:`IMAGE_ROOTFS_SIZE`.
**Q:** Why don't you support directories with spaces in the pathnames?
**A:** The Yocto Project team has tried to do this before but too many
of the tools the OpenEmbedded build system depends on, such as
``autoconf``, break when they find spaces in pathnames. Until that
situation changes, the team will not support spaces in pathnames.
**Q:** How do I use an external toolchain?
**A:** The toolchain configuration is very flexible and customizable. It
is primarily controlled with the :term:`TCMODE` variable. This variable
controls which ``tcmode-*.inc`` file to include from the
``meta/conf/distro/include`` directory within the :term:`Source Directory`.
The default value of :term:`TCMODE` is "default", which tells the
OpenEmbedded build system to use its internally built toolchain (i.e.
``tcmode-default.inc``). However, other patterns are accepted. In
particular, "external-\*" refers to external toolchains. One example is
the Sourcery G++ Toolchain. The support for this toolchain resides in
the separate ``meta-sourcery`` layer at
https://github.com/MentorEmbedded/meta-sourcery/.
In addition to the toolchain configuration, you also need a
corresponding toolchain recipe file. This recipe file needs to package
up any pre-built objects in the toolchain such as ``libgcc``,
``libstdcc++``, any locales, and ``libc``.
**Q:** How does the OpenEmbedded build system obtain source code and
will it work behind my firewall or proxy server?
**A:** The way the build system obtains source code is highly
The way the build system obtains source code is highly
configurable. You can setup the build system to get source code in most
environments if HTTP transport is available.
@@ -325,16 +102,15 @@ Here is another technique::
BB_FETCH_PREMIRRORONLY = "1"
This statement
limits the build system to pulling source from the :term:`PREMIRRORS` only.
Again, this technique is useful for reproducing builds.
This statement limits the build system to pulling source from the
:term:`PREMIRRORS` only. Again, this technique is useful for reproducing
builds.
Here is another technique::
BB_GENERATE_MIRROR_TARBALLS = "1"
This
statement tells the build system to generate mirror tarballs. This
This statement tells the build system to generate mirror tarballs. This
technique is useful if you want to create a mirror server. If not,
however, the technique can simply waste time during the build.
@@ -353,9 +129,32 @@ These changes would cause the build system to successfully fetch source
over HTTP and any network accesses to anything other than the
:term:`PREMIRRORS` would fail.
The build system also honors the standard shell environment variables
``http_proxy``, ``ftp_proxy``, ``https_proxy``, and ``all_proxy`` to
redirect requests through proxy servers.
Most source fetching by the OpenEmbedded build system is done by
``wget`` and you therefore need to specify the proxy settings in a
``.wgetrc`` file, which can be in your home directory if you are a
single user or can be in ``/usr/local/etc/wgetrc`` as a global user
file.
Following is the applicable code for setting various proxy types in the
``.wgetrc`` file. By default, these settings are disabled with comments.
To use them, remove the comments::
# You can set the default proxies for Wget to use for http, https, and ftp.
# They will override the value in the environment.
#https_proxy = http://proxy.yoyodyne.com:18023/
#http_proxy = http://proxy.yoyodyne.com:18023/
#ftp_proxy = http://proxy.yoyodyne.com:18023/
# If you do not want to use proxy at all, set this to off.
#use_proxy = on
The build system also accepts ``http_proxy``, ``ftp_proxy``, ``https_proxy``,
and ``all_proxy`` set as to standard shell environment variables to redirect
requests through proxy servers.
The Yocto Project also includes a
``meta-poky/conf/templates/default/site.conf.sample`` file that shows
how to configure CVS and Git proxy servers if needed.
.. note::
@@ -363,23 +162,199 @@ redirect requests through proxy servers.
":yocto_wiki:`Working Behind a Network Proxy </Working_Behind_a_Network_Proxy>`"
Wiki page.
**Q:** Can I get rid of build output so I can start over?
Using the OpenEmbedded Build system
===================================
**A:** Yes --- you can easily do this. When you use BitBake to build an
How do I use an external toolchain?
-----------------------------------
The toolchain configuration is very flexible and customizable. It
is primarily controlled with the :term:`TCMODE` variable. This variable
controls which ``tcmode-*.inc`` file to include from the
``meta/conf/distro/include`` directory within the :term:`Source Directory`.
The default value of :term:`TCMODE` is "default", which tells the
OpenEmbedded build system to use its internally built toolchain (i.e.
``tcmode-default.inc``). However, other patterns are accepted. In
particular, "external-\*" refers to external toolchains. One example is
the Sourcery G++ Toolchain. The support for this toolchain resides in
the separate ``meta-sourcery`` layer at
https://github.com/MentorEmbedded/meta-sourcery/.
In addition to the toolchain configuration, you also need a
corresponding toolchain recipe file. This recipe file needs to package
up any pre-built objects in the toolchain such as ``libgcc``,
``libstdcc++``, any locales, and ``libc``.
Why do I get chmod permission issues?
-------------------------------------
If you see the error
``chmod: XXXXX new permissions are r-xrwxrwx, not r-xr-xr-x``,
you are probably running the build on an NTFS filesystem. Instead,
run the build system on a partition with a modern Linux filesystem such as
``ext4``, ``btrfs`` or ``xfs``.
I see many 404 errors trying to download sources. Is anything wrong?
--------------------------------------------------------------------
Nothing is wrong. The OpenEmbedded build system checks any
configured source mirrors before downloading from the upstream sources.
The build system does this searching for both source archives and
pre-checked out versions of SCM-managed software. These checks help in
large installations because it can reduce load on the SCM servers
themselves. This can also allow builds to continue to work if an
upstream source disappears.
Why do I get random build failures?
-----------------------------------
If the same build is failing in totally different and random
ways, the most likely explanation is:
- The hardware you are running the build on has some problem.
- You are running the build under virtualization, in which case the
virtualization probably has bugs.
The OpenEmbedded build system processes a massive amount of data that
causes lots of network, disk and CPU activity and is sensitive to even
single-bit failures in any of these areas. True random failures have
always been traced back to hardware or virtualization issues.
Why does the build fail with ``iconv.h`` problems?
--------------------------------------------------
When you try to build a native recipe, you may get an error message that
indicates that GNU ``libiconv`` is not in use but ``iconv.h`` has been
included from ``libiconv``::
#error GNU libiconv not in use but included iconv.h is from libiconv
When this happens, you need to check whether you have a previously
installed version of the header file in ``/usr/local/include/``.
If that's the case, you should either uninstall it or temporarily rename
it and try the build again.
This issue is just a single manifestation of "system leakage" issues
caused when the OpenEmbedded build system finds and uses previously
installed files during a native build. This type of issue might not be
limited to ``iconv.h``. Make sure that leakage cannot occur from
``/usr/local/include`` and ``/opt`` locations.
Why don't other recipes find the files provided by my ``*-native`` recipe?
--------------------------------------------------------------------------
Files provided by your native recipe could be missing from the native
sysroot, your recipe could also be installing to the wrong place, or you
could be getting permission errors during the :ref:`ref-tasks-install`
task in your recipe.
This situation happens when the build system used by a package does not
recognize the environment variables supplied to it by :term:`BitBake`. The
incident that prompted this FAQ entry involved a Makefile that used an
environment variable named ``BINDIR`` instead of the more standard
variable ``bindir``. The makefile's hardcoded default value of
"/usr/bin" worked most of the time, but not for the recipe's ``-native``
variant. For another example, permission errors might be caused by a
Makefile that ignores ``DESTDIR`` or uses a different name for that
environment variable. Check the build system of the package to see if
these kinds of issues exist.
Can I get rid of build output so I can start over?
--------------------------------------------------
Yes --- you can easily do this. When you use BitBake to build an
image, all the build output goes into the directory created when you run
the build environment setup script (i.e.
:ref:`structure-core-script`). By default, this :term:`Build Directory`
is named ``build`` but can be named
the build environment setup script (i.e. :ref:`structure-core-script`).
By default, this :term:`Build Directory` is named ``build`` but can be named
anything you want.
Within the Build Directory, is the ``tmp`` directory. To remove all the
build output yet preserve any source code or downloaded files from
previous builds, simply remove the ``tmp`` directory.
**Q:** Why do ``${bindir}`` and ``${libdir}`` have strange values for
``-native`` recipes?
Customizing generated images
============================
**A:** Executables and libraries might need to be used from a directory
What does the OpenEmbedded build system produce as output?
----------------------------------------------------------
Because you can use the same set of recipes to create output of
various formats, the output of an OpenEmbedded build depends on how you
start it. Usually, the output is a flashable image ready for the target
device.
How do I make the Yocto Project support my board?
-------------------------------------------------
Support for an additional board is added by creating a Board
Support Package (BSP) layer for it. For more information on how to
create a BSP layer, see the
":ref:`dev-manual/common-tasks:understanding and creating layers`"
section in the Yocto Project Development Tasks Manual and the
:doc:`/bsp-guide/index`.
Usually, if the board is not completely exotic, adding support in the
Yocto Project is fairly straightforward.
How do I make the Yocto Project support my package?
---------------------------------------------------
To add a package, you need to create a BitBake recipe. For
information on how to create a BitBake recipe, see the
":ref:`dev-manual/common-tasks:writing a new recipe`"
section in the Yocto Project Development Tasks Manual.
What do I need to ship for license compliance?
----------------------------------------------
This is a difficult question and you need to consult your lawyer
for the answer for your specific case. It is worth bearing in mind that
for GPL compliance, there needs to be enough information shipped to
allow someone else to rebuild and produce the same end result you are
shipping. This means sharing the source code, any patches applied to it,
and also any configuration information about how that package was
configured and built.
You can find more information on licensing in the
":ref:`overview-manual/development-environment:licensing`"
section in the Yocto Project Overview and Concepts Manual and also in the
":ref:`dev-manual/common-tasks:maintaining open source license compliance during your product's lifecycle`"
section in the Yocto Project Development Tasks Manual.
Do I have to make a full reflash after recompiling one package?
---------------------------------------------------------------
The OpenEmbedded build system can build packages in various
formats such as IPK for OPKG, Debian package (``.deb``), or RPM. You can
then upgrade only the modified packages using the package tools on the device,
much like on a desktop distribution such as Ubuntu or Fedora. However,
package management on the target is entirely optional.
How to prevent my package from being marked as machine specific?
----------------------------------------------------------------
If you have machine-specific data in a package for one machine only
but the package is being marked as machine-specific in all cases,
you can set :term:`SRC_URI_OVERRIDES_PACKAGE_ARCH` = "0" in the ``.bb`` file.
However, but make sure the package is manually marked as machine-specific for the
case that needs it. The code that handles :term:`SRC_URI_OVERRIDES_PACKAGE_ARCH`
is in the ``meta/classes-global/base.bbclass`` file.
What's the difference between ``target`` and ``target-native``?
---------------------------------------------------------------
The ``*-native`` targets are designed to run on the system being
used for the build. These are usually tools that are needed to assist
the build in some way such as ``quilt-native``, which is used to apply
patches. The non-native version is the one that runs on the target
device.
Why do ``${bindir}`` and ``${libdir}`` have strange values for ``-native`` recipes?
-----------------------------------------------------------------------------------
Executables and libraries might need to be used from a directory
other than the directory into which they were initially installed.
Complicating this situation is the fact that sometimes these executables
and libraries are compiled with the expectation of being run from that
@@ -411,15 +386,9 @@ native program (i.e. one that is intended to run on the build machine),
that program is never installed directly to the build machine's root
file system. Consequently, the build system uses paths within the Build
Directory for ``DESTDIR``, ``bindir`` and related variables. To better
understand this, consider the following two paths where the first is
relatively normal and the second is not:
.. note::
Due to these lengthy examples, the paths are artificially broken
across lines for readability.
::
understand this, consider the following two paths (artificially broken
across lines for readability) where the first is relatively normal and
the second is not::
/home/maxtothemax/poky-bootchart2/build/tmp/work/i586-poky-linux/zlib/
1.2.8-r0/sysroot-destdir/usr/bin
@@ -428,32 +397,76 @@ relatively normal and the second is not:
zlib-native/1.2.8-r0/sysroot-destdir/home/maxtothemax/poky-bootchart2/
build/tmp/sysroots/x86_64-linux/usr/bin
Even if the paths look unusual,
they both are correct --- the first for a target and the second for a
native recipe. These paths are a consequence of the ``DESTDIR``
mechanism and while they appear strange, they are correct and in
practice very effective.
Even if the paths look unusual, they both are correct --- the first for
a target and the second for a native recipe. These paths are a consequence
of the ``DESTDIR`` mechanism and while they appear strange, they are correct
and in practice very effective.
**Q:** The files provided by my ``*-native`` recipe do not appear to be
available to other recipes. Files are missing from the native sysroot,
my recipe is installing to the wrong place, or I am getting permissions
errors during the do_install task in my recipe! What is wrong?
How do I create images with more free space?
--------------------------------------------
**A:** This situation results when a build system does not recognize the
environment variables supplied to it by :term:`BitBake`. The
incident that prompted this FAQ entry involved a Makefile that used an
environment variable named ``BINDIR`` instead of the more standard
variable ``bindir``. The makefile's hardcoded default value of
"/usr/bin" worked most of the time, but not for the recipe's ``-native``
variant. For another example, permissions errors might be caused by a
Makefile that ignores ``DESTDIR`` or uses a different name for that
environment variable. Check the build system to see if these kinds
of issues exist.
By default, the OpenEmbedded build system creates images that are
1.3 times the size of the populated root filesystem. To affect the image
size, you need to set various configurations:
**Q:** I'm adding a binary in a recipe but it's different in the image, what is
changing it?
- *Image Size:* The OpenEmbedded build system uses the
:term:`IMAGE_ROOTFS_SIZE` variable to define
the size of the image in Kbytes. The build system determines the size
by taking into account the initial root filesystem size before any
modifications such as requested size for the image and any requested
additional free disk space to be added to the image.
**A:** The first most obvious change is the system stripping debug symbols from
it. Setting :term:`INHIBIT_PACKAGE_STRIP` to stop debug symbols being stripped and/or
:term:`INHIBIT_PACKAGE_DEBUG_SPLIT` to stop debug symbols being split into a separate
file will ensure the binary is unchanged.
- *Overhead:* Use the
:term:`IMAGE_OVERHEAD_FACTOR` variable
to define the multiplier that the build system applies to the initial
image size, which is 1.3 by default.
- *Additional Free Space:* Use the
:term:`IMAGE_ROOTFS_EXTRA_SPACE`
variable to add additional free space to the image. The build system
adds this space to the image after it determines its
:term:`IMAGE_ROOTFS_SIZE`.
Why aren't spaces in path names supported?
------------------------------------------
The Yocto Project team has tried to do this before but too many
of the tools the OpenEmbedded build system depends on, such as
``autoconf``, break when they find spaces in pathnames. Until that
situation changes, the team will not support spaces in pathnames.
I'm adding a binary in a recipe. Why is it different in the image?
------------------------------------------------------------------
The first most obvious change is the system stripping debug symbols from
it. Setting :term:`INHIBIT_PACKAGE_STRIP` to stop debug symbols being
stripped and/or :term:`INHIBIT_PACKAGE_DEBUG_SPLIT` to stop debug symbols
being split into a separate file will ensure the binary is unchanged.
Issues on the running system
============================
How do I disable the cursor on my touchscreen device?
-----------------------------------------------------
You need to create a form factor file as described in the
":ref:`bsp-guide/bsp:miscellaneous bsp-specific recipe files`" section in
the Yocto Project Board Support Packages (BSP) Developer's Guide. Set
the ``HAVE_TOUCHSCREEN`` variable equal to one as follows::
HAVE_TOUCHSCREEN=1
How to always bring up connected network interfaces?
----------------------------------------------------
The default interfaces file provided by the netbase recipe does
not automatically bring up network interfaces. Therefore, you will need
to add a BSP-specific netbase that includes an interfaces file. See the
":ref:`bsp-guide/bsp:miscellaneous bsp-specific recipe files`" section in
the Yocto Project Board Support Packages (BSP) Developer's Guide for
information on creating these types of miscellaneous recipe files.
For example, add the following files to your layer::
meta-MACHINE/recipes-bsp/netbase/netbase/MACHINE/interfaces
meta-MACHINE/recipes-bsp/netbase/netbase_5.0.bbappend

View File

@@ -72,6 +72,8 @@ Project metadata:
- *phone:* Mobile phone (voice) support
- *qemu-usermode:* QEMU can support user-mode emulation for this machine
- *qvga:* Machine has a QVGA (320x240) display
- *rtc:* Machine has a Real-Time Clock
@@ -112,6 +114,13 @@ configuration level. See the
:term:`COMBINED_FEATURES` variable for more
information.
.. note::
:term:`DISTRO_FEATURES` is normally independent of kernel configuration,
so if a feature specified in :term:`DISTRO_FEATURES` also relies on
support in the kernel, you will also need to ensure that support is
enabled in the kernel configuration.
This list only represents features as shipped with the Yocto Project
metadata, as extra layers can define their own:
@@ -143,6 +152,9 @@ metadata, as extra layers can define their own:
- *ext2:* Include tools for supporting for devices with internal
HDD/Microdrive for storing files (instead of Flash only devices).
- *gobject-introspection-data:* Include data to support
`GObject Introspection <https://gi.readthedocs.io/en/latest/>`__.
- *ipsec:* Include IPSec support.
- *ipv4:* Include IPv4 support.
@@ -152,29 +164,41 @@ metadata, as extra layers can define their own:
- *keyboard:* Include keyboard support (e.g. keymaps will be loaded
during boot).
- *largefile:* Enable building applications with
`argefile support <https://en.wikipedia.org/wiki/Large-file_support>`__.
- *multiarch:* Enable building applications with multiple architecture
support.
- *ld-is-gold:* Use the `gold <https://en.wikipedia.org/wiki/Gold_(linker)>`__
linker instead of the standard GCC linker (bfd).
- *ldconfig:* Include support for ldconfig and ``ld.so.conf`` on the
target.
- *lto:* Enable `Link-Time Optimisation <https://gcc.gnu.org/wiki/LinkTimeOptimization>`__.
- *nfc:* Include support for
`Near Field Communication <https://en.wikipedia.org/wiki/Near-field_communication>`__.
- *nfs:* Include NFS client support (for mounting NFS exports on
device).
- *nls:* Include National Language Support (NLS).
- *opengl:* Include the Open Graphics Library, which is a
cross-language, multi-platform application programming interface used
for rendering two and three-dimensional graphics.
- *overlayfs:* Include `OverlayFS <https://docs.kernel.org/filesystems/overlayfs.html>`__
support.
- *pam:* Include `Pluggable Authentication Module (PAM) <https://en.wikipedia.org/wiki/Pluggable_authentication_module>`__
support.
- *pci:* Include PCI bus support.
- *pcmcia:* Include PCMCIA/CompactFlash support.
- *polkit:* Include `Polkit <https://en.wikipedia.org/wiki/Polkit>`__ support.
- *ppp:* Include PPP dialup support.
- *ptest:* Enables building the package tests where supported by
@@ -182,6 +206,13 @@ metadata, as extra layers can define their own:
":ref:`dev-manual/common-tasks:testing packages with ptest`" section
in the Yocto Project Development Tasks Manual.
- *pulseaudio:* Include support for
`PulseAudio <https://www.freedesktop.org/wiki/Software/PulseAudio/>`__.
- *selinux:* Include support for
`Security-Enhanced Linux (SELinux) <https://en.wikipedia.org/wiki/Security-Enhanced_Linux>`__
(requires `meta-selinux <https://layers.openembedded.org/layerindex/layer/meta-selinux/>`__).
- *seccomp:* Enables building applications with
`seccomp <https://en.wikipedia.org/wiki/Seccomp>`__ support, to
allow them to strictly restrict the system calls that they are allowed
@@ -273,6 +304,9 @@ Here are the image features available for all images:
just disables the mechanism which forces an non-empty password for the
root user.
- *lic-pkgs:* Installs license packages for all packages installed in a
given image.
- *overlayfs-etc:* Configures the ``/etc`` directory to be in ``overlayfs``.
This allows to store device specific information elsewhere, especially
if the root filesystem is configured to be read-only.
@@ -297,6 +331,18 @@ Here are the image features available for all images:
section in the Yocto Project Development Tasks Manual for more
information.
- *read-only-rootfs-delayed-postinsts:* when specified in conjunction
with ``read-only-rootfs``, specifies that post-install scripts are
still permitted (this assumes that the root filesystem will be made
writeable for the first boot; this feature does not do anything to
ensure that - it just disables the check for post-install scripts.)
- *serial-autologin-root:* when specified in conjunction with
``empty-root-password`` will automatically login as root on the
serial console. This of course opens up a security hole if the
serial console is potentially accessible to an attacker, so use
with caution.
- *splash:* Enables showing a splash screen during boot. By default,
this screen is provided by ``psplash``, which does allow
customization. If you prefer to use an alternative splash screen
@@ -304,6 +350,11 @@ Here are the image features available for all images:
different package name (or names) within the image recipe or at the
distro configuration level.
- *stateless-rootfs:*: specifies that the image should be created as
stateless - when using ``systemd``, ``systemctl-native`` will not
be run on the image, leaving the image for population at runtime by
systemd.
- *staticdev-pkgs:* Installs static development packages, which are
static libraries (i.e. ``*.a`` files), for all packages installed in
a given image.
@@ -322,6 +373,21 @@ these valid features is as follows:
- *ssh-server-dropbear:* Installs the Dropbear minimal SSH server.
.. note::
As of the 4.1 release, the ``ssh-server-dropbear`` feature also
recommends the ``openssh-sftp-server`` package, which by default
will be pulled into the image. This is because recent versions of
the OpenSSH ``scp`` client now use the SFTP protocol, and thus
require an SFTP server to be present to connect to. However, if
you wish to use the Dropbear ssh server `without` the SFTP server
installed, you can either remove ``ssh-server-dropbear`` from
``IMAGE_FEATURES`` and add ``dropbear`` to :term:`IMAGE_INSTALL`
instead, or alternatively still use the feature but set
:term:`BAD_RECOMMENDATIONS` as follows::
BAD_RECOMMENDATIONS += "openssh-sftp-server"
- *ssh-server-openssh:* Installs the OpenSSH SSH server, which is more
full-featured than Dropbear. Note that if both the OpenSSH SSH server
and the Dropbear minimal SSH server are present in
@@ -339,6 +405,8 @@ these valid features is as follows:
- *tools-testapps:* Installs device testing tools (e.g. touchscreen
debugging).
- *weston:* Installs Weston (reference Wayland environment).
- *x11:* Installs the X server.
- *x11-base:* Installs the X server with a minimal environment.

View File

@@ -78,11 +78,11 @@ Following is a list of supported recipes:
libraries you can use in a host development environment.
- ``core-image-minimal-initramfs``: A ``core-image-minimal`` image that
has the Minimal RAM-based Initial Root Filesystem (initramfs) as part
has the Minimal RAM-based Initial Root Filesystem (:term:`Initramfs`) as part
of the kernel, which allows the system to find the first "init"
program more efficiently. See the
:term:`PACKAGE_INSTALL` variable for
additional information helpful when working with initramfs images.
additional information helpful when working with :term:`Initramfs` images.
- ``core-image-minimal-mtdutils``: A ``core-image-minimal`` image that
has support for the Minimal MTD Utilities, which let the user
@@ -121,7 +121,7 @@ Following is a list of supported recipes:
section in the Yocto Project Development Tasks Manual.
- ``core-image-testmaster-initramfs``: A RAM-based Initial Root
Filesystem (initramfs) image tailored for use with the
Filesystem (:term:`Initramfs`) image tailored for use with the
``core-image-testmaster`` image.
- ``core-image-weston``: A very basic Wayland image with a terminal.

View File

@@ -162,7 +162,7 @@ Errors and Warnings
normally expected to be empty (such as ``/tmp``). These files may
be more appropriately installed to a different location, or
perhaps alternatively not installed at all, usually by updating the
``do_install`` task/function.
:ref:`ref-tasks-install` task/function.
.. _qa-check-arch:
@@ -536,7 +536,7 @@ Errors and Warnings
in (e.g. ``FILES:${``\ :term:`PN`\ ``}`` for the main
package).
- Delete the files at the end of the ``do_install`` task if the
- Delete the files at the end of the :ref:`ref-tasks-install` task if the
files are not needed in any package.
 
@@ -582,7 +582,7 @@ Errors and Warnings
``${datadir}/mime/packages``) and yet does not inherit the mime
class which will ensure that these get properly installed. Either
add ``inherit mime`` to the recipe or remove the files at the
``do_install`` step if they are not needed.
:ref:`ref-tasks-install` step if they are not needed.
.. _qa-check-mime-xdg:
@@ -592,7 +592,7 @@ Errors and Warnings
The specified package contains a .desktop file with a 'MimeType' key
present, but does not inherit the mime-xdg class that is required in
order for that to be activated. Either add ``inherit mime`` to the
recipe or remove the files at the ``do_install`` step if they are not
recipe or remove the files at the :ref:`ref-tasks-install` step if they are not
needed.
@@ -667,8 +667,8 @@ Errors and Warnings
If ``usrmerge`` is in :term:`DISTRO_FEATURES`, this check will ensure that no package
installs files to root (``/bin``, ``/sbin``, ``/lib``, ``/lib64``) directories. If you are seeing this
message, it indicates that the ``do_install`` step (or perhaps the build process that
``do_install`` is calling into, e.g. ``make install`` is using hardcoded paths instead
message, it indicates that the :ref:`ref-tasks-install` step (or perhaps the build process that
:ref:`ref-tasks-install` is calling into, e.g. ``make install`` is using hardcoded paths instead
of the variables set up for this (``bindir``, ``sbindir``, etc.), and should be
changed so that it does.
@@ -677,7 +677,7 @@ Errors and Warnings
- ``Fuzz detected: <patch output> [patch-fuzz]``
This check looks for evidence of "fuzz" when applying patches within the ``do_patch``
This check looks for evidence of "fuzz" when applying patches within the :ref:`ref-tasks-patch`
task. Patch fuzz is a situation when the ``patch`` tool ignores some of the context
lines in order to apply the patch. Consider this example:
@@ -748,6 +748,22 @@ Errors and Warnings
other things in the patches, those can be discarded.
.. _qa-check-buildpaths:
- ``File <filename> in package <packagename> contains reference to TMPDIR [buildpaths]``
This check ensures that build system paths (including :term:`TMPDIR`) do not
appear in output files, which not only leaks build system configuration into
the target, but also hinders binary reproducibility as the output will change
if the build system configuration changes.
Typically these paths will enter the output through some mechanism in the
configuration or compilation of the software being built by the recipe. To
resolve this issue you will need to determine how the detected path is
entering the output. Sometimes it may require adjusting scripts or code to
use a relative path rather than an absolute one, or to pick up the path from
runtime configuration or environment variables.
Configuring and Disabling QA Checks
===================================

View File

@@ -127,7 +127,7 @@ consists of the following pieces:
an ARM target, did the build produce ARM binaries. If, for example,
the build produced PPC binaries then there is a problem.
- :ref:`ref-classes-testimage*`: This class
- :ref:`ref-classes-testimage`: This class
performs runtime testing of images after they are built. The tests
are usually used with :doc:`QEMU </dev-manual/qemu>`
to boot the images and check the combined runtime result boot

View File

@@ -630,7 +630,7 @@ Here are key subdirectories within each recipe work directory:
split into individual packages.
- ``${WORKDIR}/packages-split``: Contains the output of the
``do_package`` task after the output has been split into individual
:ref:`ref-tasks-package` task after the output has been split into individual
packages. There are subdirectories for each individual package created by
the recipe.
@@ -669,10 +669,10 @@ Yocto Project. Metadata has several important subdivisions:
.. _structure-meta-classes:
``meta/classes/``
-----------------
``meta/classes*/``
------------------
This directory contains the ``*.bbclass`` files. Class files are used to
These directories contain the ``*.bbclass`` files. Class files are used to
abstract common code so it can be reused by multiple packages. Every
package inherits the :ref:`ref-classes-base` file. Examples of other important
classes are :ref:`ref-classes-autotools`, which in theory allows any

View File

@@ -41,6 +41,8 @@ distributions:
- Ubuntu 20.04 (LTS)
- Ubuntu 22.04 (LTS)
- Fedora 34
- Fedora 35
@@ -72,12 +74,12 @@ distributions:
the supported platforms listed below.
- You may use Windows Subsystem For Linux v2 to set up a build host
using Windows 10, but validation is not performed against build
hosts using WSLv2.
using Windows 10 or later, or Windows Server 2019 or later, but validation
is not performed against build hosts using WSL 2.
- The Yocto Project is not compatible with WSLv1, it is
compatible but not officially supported nor validated with
WSLv2, if you still decide to use WSL please upgrade to WSLv2.
See the
:ref:`dev-manual/start:setting up to use windows subsystem for linux (wsl 2)`
section in the Yocto Project Development Tasks Manual for more information.
- If you encounter problems, please go to :yocto_bugs:`Yocto Project
Bugzilla <>` and submit a bug. We are

View File

@@ -36,7 +36,7 @@ directory set to ``${``\ :term:`B`\ ``}``.
The default behavior of this task is to run the ``oe_runmake`` function
if a makefile (``Makefile``, ``makefile``, or ``GNUmakefile``) is found.
If no such file is found, the ``do_compile`` task does nothing.
If no such file is found, the :ref:`ref-tasks-compile` task does nothing.
.. _ref-tasks-compile_ptest_base:
@@ -58,7 +58,7 @@ The default behavior of this task is to run ``oe_runmake clean`` if a
makefile (``Makefile``, ``makefile``, or ``GNUmakefile``) is found and
:term:`CLEANBROKEN` is not set to "1". If no such
file is found or the :term:`CLEANBROKEN` variable is set to "1", the
``do_configure`` task does nothing.
:ref:`ref-tasks-configure` task does nothing.
.. _ref-tasks-configure_ptest_base:
@@ -81,7 +81,7 @@ Recipes implementing this task should inherit the
:ref:`deploy <ref-classes-deploy>` class and should write the output
to ``${``\ :term:`DEPLOYDIR`\ ``}``, which is not to be
confused with ``${DEPLOY_DIR}``. The :ref:`deploy <ref-classes-deploy>` class sets up
``do_deploy`` as a shared state (sstate) task that can be accelerated
:ref:`ref-tasks-deploy` as a shared state (sstate) task that can be accelerated
through sstate use. The sstate mechanism takes care of copying the
output from ``${DEPLOYDIR}`` to ``${DEPLOY_DIR_IMAGE}``.
@@ -90,14 +90,14 @@ output from ``${DEPLOYDIR}`` to ``${DEPLOY_DIR_IMAGE}``.
Do not write the output directly to ``${DEPLOY_DIR_IMAGE}``, as this causes
the sstate mechanism to malfunction.
The ``do_deploy`` task is not added as a task by default and
The :ref:`ref-tasks-deploy` task is not added as a task by default and
consequently needs to be added manually. If you want the task to run
after :ref:`ref-tasks-compile`, you can add it by doing
the following::
addtask deploy after do_compile
Adding ``do_deploy`` after other tasks works the same way.
Adding :ref:`ref-tasks-deploy` after other tasks works the same way.
.. note::
@@ -110,7 +110,7 @@ Adding ``do_deploy`` after other tasks works the same way.
See the ":ref:`bitbake-user-manual/bitbake-user-manual-execution:dependencies`"
section in the BitBake User Manual for more information.
If the ``do_deploy`` task re-executes, any previous output is removed
If the :ref:`ref-tasks-deploy` task re-executes, any previous output is removed
(i.e. "cleaned").
.. _ref-tasks-fetch:
@@ -128,15 +128,15 @@ module.
``do_image``
------------
Starts the image generation process. The ``do_image`` task runs after
Starts the image generation process. The :ref:`ref-tasks-image` task runs after
the OpenEmbedded build system has run the
:ref:`ref-tasks-rootfs` task during which packages are
identified for installation into the image and the root filesystem is
created, complete with post-processing.
The ``do_image`` task performs pre-processing on the image through the
The :ref:`ref-tasks-image` task performs pre-processing on the image through the
:term:`IMAGE_PREPROCESS_COMMAND` and
dynamically generates supporting ``do_image_*`` tasks as needed.
dynamically generates supporting :ref:`do_image_* <ref-tasks-image>` tasks as needed.
For more information on image creation, see the ":ref:`overview-manual/concepts:image generation`"
section in the Yocto Project Overview and Concepts Manual.
@@ -146,13 +146,13 @@ section in the Yocto Project Overview and Concepts Manual.
``do_image_complete``
---------------------
Completes the image generation process. The ``do_image_complete`` task
Completes the image generation process. The :ref:`do_image_complete <ref-tasks-image-complete>` task
runs after the OpenEmbedded build system has run the
:ref:`ref-tasks-image` task during which image
pre-processing occurs and through dynamically generated ``do_image_*``
pre-processing occurs and through dynamically generated :ref:`do_image_* <ref-tasks-image>`
tasks the image is constructed.
The ``do_image_complete`` task performs post-processing on the image
The :ref:`do_image_complete <ref-tasks-image-complete>` task performs post-processing on the image
through the
:term:`IMAGE_POSTPROCESS_COMMAND`.
@@ -168,9 +168,9 @@ section in the Yocto Project Overview and Concepts Manual.
Copies files that are to be packaged into the holding area
``${``\ :term:`D`\ ``}``. This task runs with the current
working directory set to ``${``\ :term:`B`\ ``}``, which is the
compilation directory. The ``do_install`` task, as well as other tasks
compilation directory. The :ref:`ref-tasks-install` task, as well as other tasks
that either directly or indirectly depend on the installed files (e.g.
:ref:`ref-tasks-package`, ``do_package_write_*``, and
:ref:`ref-tasks-package`, :ref:`do_package_write_* <ref-tasks-package_write_deb>`, and
:ref:`ref-tasks-rootfs`), run under
:ref:`fakeroot <overview-manual/concepts:fakeroot and pseudo>`.
@@ -190,8 +190,8 @@ that either directly or indirectly depend on the installed files (e.g.
- The ``cp`` command with the ``--no-preserve=ownership`` option.
- The ``tar`` command with the ``--no-same-owner`` option. See the
``bin_package.bbclass`` file in the ``meta/classes`` directory of
the :term:`Source Directory` for an example.
``bin_package.bbclass`` file in the ``meta/classes-recipe``
subdirectory of the :term:`Source Directory` for an example.
.. _ref-tasks-install_ptest_base:
@@ -212,7 +212,7 @@ based on available packages and files. This task makes use of the
:term:`PACKAGES` and :term:`FILES`
variables.
The ``do_package`` task, in conjunction with the
The :ref:`ref-tasks-package` task, in conjunction with the
:ref:`ref-tasks-packagedata` task, also saves some
important package metadata. For additional information, see the
:term:`PKGDESTWORK` variable and the
@@ -327,7 +327,7 @@ file as a patch file::
"
Conversely, if you have a file whose file type is ``.patch`` or ``.diff``
and you want to exclude it so that the ``do_patch`` task does not apply
and you want to exclude it so that the :ref:`ref-tasks-patch` task does not apply
it during the patch phase, you can use the "apply=no" parameter with the
:term:`SRC_URI` statement::
@@ -392,7 +392,7 @@ For information on what directories are copied by default, see the
these variables inside your recipe if you need to make additional (or
fewer) directories available to other recipes at build time.
The ``do_populate_sysroot`` task is a shared state (sstate) task, which
The :ref:`ref-tasks-populate_sysroot` task is a shared state (sstate) task, which
means that the task can be accelerated through sstate use. Realize also
that if the task is re-executed, any previous output is removed (i.e.
"cleaned").
@@ -447,7 +447,7 @@ Validates the :term:`SRC_URI` value.
------------
Removes all output files for a target from the
:ref:`ref-tasks-unpack` task forward (i.e. ``do_unpack``,
:ref:`ref-tasks-unpack` task forward (i.e. :ref:`ref-tasks-unpack`,
:ref:`ref-tasks-configure`,
:ref:`ref-tasks-compile`,
:ref:`ref-tasks-install`, and
@@ -473,7 +473,7 @@ use the :ref:`ref-tasks-cleansstate` task instead
Removes all output files, shared state
(:ref:`sstate <overview-manual/concepts:shared state cache>`) cache, and
downloaded source files for a target (i.e. the contents of
:term:`DL_DIR`). Essentially, the ``do_cleanall`` task is
:term:`DL_DIR`). Essentially, the :ref:`ref-tasks-cleanall` task is
identical to the :ref:`ref-tasks-cleansstate` task
with the added removal of downloaded source files.
@@ -481,7 +481,7 @@ You can run this task using BitBake as follows::
$ bitbake -c cleanall recipe
Typically, you would not normally use the ``cleanall`` task. Do so only
Typically, you would not normally use the :ref:`ref-tasks-cleanall` task. Do so only
if you want to start fresh with the :ref:`ref-tasks-fetch`
task.
@@ -492,7 +492,7 @@ task.
Removes all output files and shared state
(:ref:`sstate <overview-manual/concepts:shared state cache>`) cache for a
target. Essentially, the ``do_cleansstate`` task is identical to the
target. Essentially, the :ref:`ref-tasks-cleansstate` task is identical to the
:ref:`ref-tasks-clean` task with the added removal of
shared state (:ref:`sstate <overview-manual/concepts:shared state cache>`)
cache.
@@ -501,13 +501,13 @@ You can run this task using BitBake as follows::
$ bitbake -c cleansstate recipe
When you run the ``do_cleansstate`` task, the OpenEmbedded build system
When you run the :ref:`ref-tasks-cleansstate` task, the OpenEmbedded build system
no longer uses any sstate. Consequently, building the recipe from
scratch is guaranteed.
.. note::
The ``do_cleansstate`` task cannot remove sstate from a remote sstate
The :ref:`ref-tasks-cleansstate` task cannot remove sstate from a remote sstate
mirror. If you need to build a target from scratch using remote mirrors, use
the "-f" option as follows::
@@ -575,10 +575,8 @@ information on live image types.
``do_bundle_initramfs``
-----------------------
Combines an initial RAM disk (initramfs) image and kernel together to
form a single image. The
:term:`CONFIG_INITRAMFS_SOURCE` variable
has some more information about these types of images.
Combines an :term:`Initramfs` image and kernel together to
form a single image.
.. _ref-tasks-rootfs:
@@ -657,7 +655,7 @@ section in the Yocto Project Linux Kernel Development Manual.
Converts the newly unpacked kernel source into a form with which the
OpenEmbedded build system can work. Because the kernel source can be
fetched in several different ways, the ``do_kernel_checkout`` task makes
fetched in several different ways, the :ref:`ref-tasks-kernel_checkout` task makes
sure that subsequent tasks are given a clean working tree copy of the
kernel with the correct branches checked out.
@@ -668,7 +666,7 @@ kernel with the correct branches checked out.
Validates the configuration produced by the
:ref:`ref-tasks-kernel_menuconfig` task. The
``do_kernel_configcheck`` task produces warnings when a requested
:ref:`ref-tasks-kernel_configcheck` task produces warnings when a requested
configuration does not appear in the final ``.config`` file or when you
override a policy configuration in a hardware configuration fragment.
You can run this task explicitly and view the output by using the
@@ -686,7 +684,7 @@ section in the Yocto Project Linux Kernel Development Manual.
----------------------
After the kernel is patched by the :ref:`ref-tasks-patch`
task, the ``do_kernel_configme`` task assembles and merges all the
task, the :ref:`ref-tasks-kernel_configme` task assembles and merges all the
kernel config fragments into a merged configuration that can then be
passed to the kernel configuration phase proper. This is also the time
during which user-specified defconfigs are applied if present, and where
@@ -719,7 +717,7 @@ information on this configuration tool.
Collects all the features required for a given kernel build, whether the
features come from :term:`SRC_URI` or from Git
repositories. After collection, the ``do_kernel_metadata`` task
repositories. After collection, the :ref:`ref-tasks-kernel_metadata` task
processes the features into a series of config fragments and patches,
which can then be applied by subsequent tasks such as
:ref:`ref-tasks-patch` and
@@ -791,4 +789,4 @@ After the kernel is unpacked but before it is patched, this task makes
sure that the machine and metadata branches as specified by the
:term:`SRCREV` variables actually exist on the specified
branches. Otherwise, if :term:`AUTOREV` is not being used, the
``do_validate_branches`` task fails during the build.
:ref:`ref-tasks-validate_branches` task fails during the build.

View File

@@ -773,7 +773,7 @@ system and gives an overview of their function and contents.
and `glob <https://docs.python.org/3/library/glob.html>`__.
For more information on how this variable works, see
``meta/classes/binconfig.bbclass`` in the :term:`Source Directory`.
``meta/classes-recipe/binconfig.bbclass`` in the :term:`Source Directory`.
You can also find general
information on the class in the
":ref:`ref-classes-binconfig`" section.
@@ -920,10 +920,10 @@ system and gives an overview of their function and contents.
and sdk). If you want to track changes to build history over time,
you should set this value to "1".
By default, the :ref:`buildhistory <ref-classes-buildhistory>` class does not commit the build
history output in a local Git repository::
By default, the :ref:`buildhistory <ref-classes-buildhistory>` class
enables committing the buildhistory output in a local Git repository::
BUILDHISTORY_COMMIT ?= "0"
BUILDHISTORY_COMMIT ?= "1"
:term:`BUILDHISTORY_COMMIT_AUTHOR`
When inheriting the :ref:`buildhistory <ref-classes-buildhistory>`
@@ -1171,12 +1171,10 @@ system and gives an overview of their function and contents.
packages for all the packages explicitly (or implicitly) installed in
an image.
.. note::
The :term:`COMPLEMENTARY_GLOB` variable uses Unix filename pattern matching
(`fnmatch <https://docs.python.org/3/library/fnmatch.html#module-fnmatch>`__),
which is similar to the Unix style pathname pattern expansion
(`glob <https://docs.python.org/3/library/glob.html>`__).
The :term:`COMPLEMENTARY_GLOB` variable uses Unix filename pattern matching
(`fnmatch <https://docs.python.org/3/library/fnmatch.html#module-fnmatch>`__),
which is similar to the Unix style pathname pattern expansion
(`glob <https://docs.python.org/3/library/glob.html>`__).
The resulting list of complementary packages is associated with an
item that can be added to
@@ -1191,6 +1189,11 @@ system and gives an overview of their function and contents.
COMPLEMENTARY_GLOB[dev-pkgs] = '*-dev'
.. note::
When installing complementary packages, recommends relationships
(set via :term:`RRECOMMENDS`) are always ignored.
:term:`COMPONENTS_DIR`
Stores sysroot components for each recipe. The OpenEmbedded build
system uses :term:`COMPONENTS_DIR` when constructing recipe-specific
@@ -1242,24 +1245,24 @@ system and gives an overview of their function and contents.
:term:`Source Directory`.
:term:`CONFIG_INITRAMFS_SOURCE`
Identifies the initial RAM filesystem (initramfs) source files. The
Identifies the initial RAM filesystem (:term:`Initramfs`) source files. The
OpenEmbedded build system receives and uses this kernel Kconfig
variable as an environment variable. By default, the variable is set
to null ("").
The :term:`CONFIG_INITRAMFS_SOURCE` can be either a single cpio archive
with a ``.cpio`` suffix or a space-separated list of directories and
files for building the initramfs image. A cpio archive should contain
a filesystem archive to be used as an initramfs image. Directories
should contain a filesystem layout to be included in the initramfs
files for building the :term:`Initramfs` image. A cpio archive should contain
a filesystem archive to be used as an :term:`Initramfs` image. Directories
should contain a filesystem layout to be included in the :term:`Initramfs`
image. Files should contain entries according to the format described
by the ``usr/gen_init_cpio`` program in the kernel tree.
If you specify multiple directories and files, the initramfs image
If you specify multiple directories and files, the :term:`Initramfs` image
will be the aggregate of all of them.
For information on creating an initramfs, see the
":ref:`dev-manual/common-tasks:building an initial ram filesystem (initramfs) image`" section
For information on creating 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.
:term:`CONFIG_SITE`
@@ -1466,15 +1469,31 @@ system and gives an overview of their function and contents.
# This is windows only issue.
CVE_CHECK_IGNORE += "CVE-2020-15523"
:term:`CVE_CHECK_SHOW_WARNINGS`
Specifies whether or not the :ref:`cve-check <ref-classes-cve-check>`
class should generate warning messages on the console when unpatched
CVEs are found. The default is "1", but you may wish to set it to "0" if
you are already examining/processing the logs after the build has
completed and thus do not need the warning messages.
:term:`CVE_CHECK_SKIP_RECIPE`
The list of package names (:term:`PN`) for which
CVEs (Common Vulnerabilities and Exposures) are ignored.
:term:`CVE_DB_UPDATE_INTERVAL`
Specifies the CVE database update interval in seconds, as used by
``cve-update-db-native``. The default value is "86400" i.e. once a day
(24*60*60). If the value is set to "0" then the update will be forced
every time. Alternatively, a negative value e.g. "-1" will disable
updates entirely.
:term:`CVE_PRODUCT`
In a recipe, defines the name used to match the recipe name
against the name in the upstream `NIST CVE database <https://nvd.nist.gov/>`__.
The default is ${:term:`BPN`}. If it does not match the name in the NIST CVE
The default is ${:term:`BPN`} (except for recipes that inherit the
:ref:`pypi <ref-classes-pypi>` class where it is set based upon
:term:`PYPI_PACKAGE`). If it does not match the name in the NIST CVE
database or matches with multiple entries in the database, the default
value needs to be changed.
@@ -1620,7 +1639,7 @@ system and gives an overview of their function and contents.
the appropriate staging sysroot, given by the
:term:`STAGING_DIR* <STAGING_DIR>` variables, by the time the
:ref:`ref-tasks-configure` task for ``foo`` runs.
This mechanism is implemented by having ``do_configure`` depend on
This mechanism is implemented by having :ref:`ref-tasks-configure` depend on
the :ref:`ref-tasks-populate_sysroot` task of
each recipe listed in :term:`DEPENDS`, through a
``[``\ :ref:`deptask <bitbake:bitbake-user-manual/bitbake-user-manual-metadata:variable flags>`\ ``]``
@@ -1812,6 +1831,23 @@ system and gives an overview of their function and contents.
:term:`DESCRIPTION` takes the value of the :term:`SUMMARY`
variable.
:term:`DEV_PKG_DEPENDENCY`
Provides an easy way for recipes to disable or adjust the runtime
dependency (:term:`RDEPENDS`) of the ``${PN}-dev`` package on the main
(``${PN}``) package, particularly where the main package may be empty.
:term:`DISABLE_STATIC`
Used in order to disable static linking by default (in order to save
space, since static libraries are often unused in embedded systems.)
The default value is " --disable-static", however it can be set to ""
in order to enable static linking if desired. Certain recipes do this
individually, and also there is a
``meta/conf/distro/include/no-static-libs.inc`` include file that
disables static linking for a number of recipes. Some software
packages or build tools (such as CMake) have explicit support for
enabling / disabling static linking, and in those cases
:term:`DISABLE_STATIC` is not used.
:term:`DISTRO`
The short name of the distribution. For information on the long name
of the distribution, see the :term:`DISTRO_NAME`
@@ -2029,7 +2065,7 @@ system and gives an overview of their function and contents.
available are xz and bz2.
For information on policies and on how to use this variable, see the
comments in the ``meta/classes/compress_doc.bbclass`` file.
comments in the ``meta/classes-recipe/compress_doc.bbclass`` file.
:term:`EFI_PROVIDER`
When building bootable images (i.e. where ``hddimg``, ``iso``, or
@@ -2197,7 +2233,7 @@ system and gives an overview of their function and contents.
variable tells the OpenEmbedded build system to prefer the installed
external tools. See the
:ref:`kernel-yocto <ref-classes-kernel-yocto>` class in
``meta/classes`` to see how the variable is used.
``meta/classes-recipe`` to see how the variable is used.
:term:`EXTERNALSRC`
When inheriting the :ref:`externalsrc <ref-classes-externalsrc>`
@@ -2574,7 +2610,7 @@ system and gives an overview of their function and contents.
:term:`SRC_URI` statements.
The default value for the :term:`FILESPATH` variable is defined in the
:ref:`ref-classes-base` class found in ``meta/classes`` in the
:ref:`ref-classes-base` class found in ``meta/classes-global`` in the
:term:`Source Directory`::
FILESPATH = "${@base_set_filespath(["${FILE_DIRNAME}/${BP}", \
@@ -2687,6 +2723,10 @@ system and gives an overview of their function and contents.
Specifies the signature algorithm used in creating the FIT Image.
For e.g. rsa2048.
:term:`FIT_PAD_ALG`
Specifies the padding algorithm used in creating the FIT Image.
The default value is "pkcs-1.5".
:term:`FIT_SIGN_INDIVIDUAL`
If set to "1", then the :ref:`kernel-fitimage <ref-classes-kernel-fitimage>`
class will sign the kernel, dtb and ramdisk images individually in addition
@@ -2756,6 +2796,13 @@ system and gives an overview of their function and contents.
The directory in which a local copy of a Git repository is stored
when it is cloned.
:term:`GITHUB_BASE_URI`
When inheriting the :ref:`github-releases <ref-classes-github-releases>`
class, specifies the base URL for fetching releases for the github
project you wish to fetch sources from. The default value is as follows::
GITHUB_BASE_URI ?= "https://github.com/${BPN}/${BPN}/releases/"
:term:`GLIBC_GENERATE_LOCALES`
Specifies the list of GLIBC locales to generate should you not wish
to generate all LIBC locals, which can be time consuming.
@@ -3041,17 +3088,23 @@ system and gives an overview of their function and contents.
material for Wic is located in the
":doc:`/ref-manual/kickstart`" chapter.
:term:`IMAGE_BUILDINFO_FILE`
When using the :ref:`image-buildinfo <ref-classes-image-buildinfo>` class,
specifies the file in the image to write the build information into. The
default value is "``${sysconfdir}/buildinfo``".
:term:`IMAGE_BUILDINFO_VARS`
When using the :ref:`image-buildinfo <ref-classes-image-buildinfo>` class,
specifies the list of variables to include in the `Build Configuration`
section of the output file (as a space-separated list). Defaults to
":term:`DISTRO` :term:`DISTRO_VERSION`".
:term:`IMAGE_CLASSES`
A list of classes that all images should inherit. You typically use
this variable to specify the list of classes that register the
different types of images the OpenEmbedded build system creates.
A list of classes that all images should inherit. This is typically used
to enable functionality across all image recipes.
The default value for :term:`IMAGE_CLASSES` is ``image_types``. You can
set this variable in your ``local.conf`` or in a distribution
configuration file.
For more information, see ``meta/classes/image_types.bbclass`` in the
:term:`Source Directory`.
Classes specified in :term:`IMAGE_CLASSES` must be located in the
``classes-recipe/`` or ``classes/`` subdirectories.
:term:`IMAGE_CMD`
Specifies the command to create the image file for a specific image
@@ -3067,7 +3120,7 @@ system and gives an overview of their function and contents.
You typically do not need to set this variable unless you are adding
support for a new image type. For more examples on how to set this
variable, see the :ref:`image_types <ref-classes-image_types>`
class file, which is ``meta/classes/image_types.bbclass``.
class file, which is ``meta/classes-recipe/image_types.bbclass``.
:term:`IMAGE_DEVICE_TABLES`
Specifies one or more files that contain custom device tables that
@@ -3182,10 +3235,10 @@ system and gives an overview of their function and contents.
image, do not use the :term:`IMAGE_INSTALL` variable to specify
packages for installation. Instead, use the
:term:`PACKAGE_INSTALL` variable, which
allows the initial RAM filesystem (initramfs) recipe to use a
allows the initial RAM filesystem (:term:`Initramfs`) recipe to use a
fixed set of packages and not be affected by :term:`IMAGE_INSTALL`.
For information on creating an initramfs, see the
":ref:`dev-manual/common-tasks:building an initial ram filesystem (initramfs) image`"
For information on creating 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.
- Using :term:`IMAGE_INSTALL` with the
@@ -3265,7 +3318,7 @@ system and gives an overview of their function and contents.
to distinguish the image file from other files created during image
building; however if this suffix is redundant or not desired you can
clear the value of this variable (set the value to ""). For example,
this is typically cleared in initramfs image recipes.
this is typically cleared in :term:`Initramfs` image recipes.
:term:`IMAGE_OVERHEAD_FACTOR`
Defines a multiplier that the build system applies to the initial
@@ -3463,7 +3516,7 @@ system and gives an overview of their function and contents.
- wic.lzma
For more information about these types of images, see
``meta/classes/image_types*.bbclass`` in the :term:`Source Directory`.
``meta/classes-recipe/image_types*.bbclass`` in the :term:`Source Directory`.
:term:`IMAGE_VERSION_SUFFIX`
Version suffix that is part of the default :term:`IMAGE_NAME` and
@@ -3546,7 +3599,7 @@ system and gives an overview of their function and contents.
Although you can use other settings, you might be required to
remove dependencies on or provide alternatives to components that
remove dependencies on (or provide alternatives to) components that
are required to produce a functional system image.
:term:`INCOMPATIBLE_LICENSE_EXCEPTIONS`
@@ -3562,6 +3615,8 @@ system and gives an overview of their function and contents.
functions in the class or classes are not executed for the base
configuration and in each individual recipe. The OpenEmbedded build
system ignores changes to :term:`INHERIT` in individual recipes.
Classes inherited using :term:`INHERIT` must be located in the
``classes-global/`` or ``classes/`` subdirectories.
For more information on :term:`INHERIT`, see the
:ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:\`\`inherit\`\` configuration directive`"
@@ -3571,6 +3626,9 @@ system and gives an overview of their function and contents.
Lists classes that will be inherited at the distribution level. It is
unlikely that you want to edit this variable.
Classes specified in :term:`INHERIT_DISTRO` must be located in the
``classes-global/`` or ``classes/`` subdirectories.
The default value of the variable is set as follows in the
``meta/conf/distro/defaultsetup.conf`` file::
@@ -3632,37 +3690,79 @@ system and gives an overview of their function and contents.
even if the toolchain's binaries are strippable, there are other files
needed for the build that are not strippable.
:term:`Initramfs`
An Initial RAM Filesystem (:term:`Initramfs`) is an optionally compressed
`cpio <https://en.wikipedia.org/wiki/Cpio>`__ archive which is extracted
by the Linux kernel into RAM in a special `tmpfs <https://en.wikipedia.org/wiki/Tmpfs>`__
instance, used as the initial root filesystem.
This is a replacement for the legacy init RAM disk ("initrd")
technique, booting on an emulated block device in RAM, but being less
efficient because of the overhead of going through a filesystem and
having to duplicate accessed file contents in the file cache in RAM,
as for any block device.
.. note:
As far as bootloaders are concerned, :term:`Initramfs` and "initrd"
images are still copied to RAM in the same way. That's why most
most bootloaders refer to :term:`Initramfs` images as "initrd"
or "init RAM disk".
This kind of mechanism is typically used for two reasons:
- For booting the same kernel binary on multiple systems requiring
different device drivers. The Initramfs image is then customized
for each type of system, to include the specific kernel modules
necessary to access the final root filesystem. This technique
is used on all GNU / Linux distributions for desktops and servers.
- For booting faster. As the root filesystem is extracted into RAM,
accessing the first user-space applications is very fast, compared
to having to initialize a block device, to access multiple blocks
from it, and to go through a filesystem having its own overhead.
For example, this allows to display a splashscreen very early,
and to later take care of mounting the final root filesystem and
loading less time-critical kernel drivers.
This cpio archive can either be loaded to RAM by the bootloader,
or be included in the kernel binary.
For information on creating and using 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.
:term:`INITRAMFS_DEPLOY_DIR_IMAGE`
Indicates the deploy directory used by ``do_bundle_initramfs`` where the
Indicates the deploy directory used by :ref:`ref-tasks-bundle_initramfs` where the
:term:`INITRAMFS_IMAGE` will be fetched from.
This variable is set by default to ``${DEPLOY_DIR_IMAGE}`` in the
:ref:`kernel <ref-classes-kernel>` class and it's only meant to be changed
when building an initramfs image from a separate multiconfig via :term:`INITRAMFS_MULTICONFIG`.
when building an :term:`Initramfs` image from a separate multiconfig via :term:`INITRAMFS_MULTICONFIG`.
:term:`INITRAMFS_FSTYPES`
Defines the format for the output image of an initial RAM filesystem
(initramfs), which is used during boot. Supported formats are the
(:term:`Initramfs`), which is used during boot. Supported formats are the
same as those supported by the
:term:`IMAGE_FSTYPES` variable.
The default value of this variable, which is set in the
``meta/conf/bitbake.conf`` configuration file in the
:term:`Source Directory`, is "cpio.gz". The Linux kernel's
initramfs mechanism, as opposed to the initial RAM filesystem
:term:`Initramfs` mechanism, as opposed to the initial RAM filesystem
`initrd <https://en.wikipedia.org/wiki/Initrd>`__ mechanism, expects
an optionally compressed cpio archive.
:term:`INITRAMFS_IMAGE`
Specifies the :term:`PROVIDES` name of an image
recipe that is used to build an initial RAM filesystem (initramfs)
recipe that is used to build an initial RAM filesystem (:term:`Initramfs`)
image. In other words, the :term:`INITRAMFS_IMAGE` variable causes an
additional recipe to be built as a dependency to whatever root
filesystem recipe you might be using (e.g. ``core-image-sato``). The
initramfs image recipe you provide should set
:term:`Initramfs` image recipe you provide should set
:term:`IMAGE_FSTYPES` to
:term:`INITRAMFS_FSTYPES`.
An initramfs image provides a temporary root filesystem used for
An :term:`Initramfs` image provides a temporary root filesystem used for
early system initialization (e.g. loading of modules needed to locate
and mount the "real" root filesystem).
@@ -3670,8 +3770,8 @@ system and gives an overview of their function and contents.
See the ``meta/recipes-core/images/core-image-minimal-initramfs.bb``
recipe in the :term:`Source Directory`
for an example initramfs recipe. To select this sample recipe as
the one built to provide the initramfs image, set :term:`INITRAMFS_IMAGE`
for an example :term:`Initramfs` recipe. To select this sample recipe as
the one built to provide the :term:`Initramfs` image, set :term:`INITRAMFS_IMAGE`
to "core-image-minimal-initramfs".
You can also find more information by referencing the
@@ -3681,13 +3781,13 @@ system and gives an overview of their function and contents.
class to see how to use the :term:`INITRAMFS_IMAGE` variable.
If :term:`INITRAMFS_IMAGE` is empty, which is the default, then no
initramfs image is built.
:term:`Initramfs` image is built.
For more information, you can also see the
:term:`INITRAMFS_IMAGE_BUNDLE`
variable, which allows the generated image to be bundled inside the
kernel image. Additionally, for information on creating an initramfs
image, see the ":ref:`dev-manual/common-tasks:building an initial ram filesystem (initramfs) image`" section
kernel image. Additionally, for information on creating an :term:`Initramfs`
image, see the ":ref:`dev-manual/common-tasks:building an initial ram filesystem (Initramfs) image`" section
in the Yocto Project Development Tasks Manual.
:term:`INITRAMFS_IMAGE_BUNDLE`
@@ -3696,32 +3796,32 @@ system and gives an overview of their function and contents.
extra pass
(:ref:`ref-tasks-bundle_initramfs`) during
kernel compilation in order to build a single binary that contains
both the kernel image and the initial RAM filesystem (initramfs)
both the kernel image and the initial RAM filesystem (:term:`Initramfs`)
image. This makes use of the
:term:`CONFIG_INITRAMFS_SOURCE` kernel
feature.
.. note::
Bundling the initramfs with the kernel conflates the code in the
initramfs with the GPLv2 licensed Linux kernel binary. Thus only GPLv2
compatible software may be part of a bundled initramfs.
Bundling the :term:`Initramfs` with the kernel conflates the code in the
:term:`Initramfs` with the GPLv2 licensed Linux kernel binary. Thus only GPLv2
compatible software may be part of a bundled :term:`Initramfs`.
.. note::
Using an extra compilation pass to bundle the initramfs avoids a
circular dependency between the kernel recipe and the initramfs
recipe should the initramfs include kernel modules. Should that be
the case, the initramfs recipe depends on the kernel for the
kernel modules, and the kernel depends on the initramfs recipe
since the initramfs is bundled inside the kernel image.
Using an extra compilation pass to bundle the :term:`Initramfs` avoids a
circular dependency between the kernel recipe and the :term:`Initramfs`
recipe should the :term:`Initramfs` include kernel modules. Should that be
the case, the :term:`Initramfs` recipe depends on the kernel for the
kernel modules, and the kernel depends on the :term:`Initramfs` recipe
since the :term:`Initramfs` is bundled inside the kernel image.
The combined binary is deposited into the ``tmp/deploy`` directory,
which is part of the :term:`Build Directory`.
Setting the variable to "1" in a configuration file causes the
OpenEmbedded build system to generate a kernel image with the
initramfs specified in :term:`INITRAMFS_IMAGE` bundled within::
:term:`Initramfs` specified in :term:`INITRAMFS_IMAGE` bundled within::
INITRAMFS_IMAGE_BUNDLE = "1"
@@ -3739,12 +3839,12 @@ system and gives an overview of their function and contents.
See the
:yocto_git:`local.conf.sample.extended </poky/tree/meta-poky/conf/templates/default/local.conf.sample.extended>`
file for additional information. Also, for information on creating an
initramfs, see the ":ref:`dev-manual/common-tasks:building an initial ram filesystem (initramfs) image`" section
:term:`Initramfs`, see the ":ref:`dev-manual/common-tasks:building an initial ram filesystem (Initramfs) image`" section
in the Yocto Project Development Tasks Manual.
:term:`INITRAMFS_LINK_NAME`
The link name of the initial RAM filesystem image. This variable is
set in the ``meta/classes/kernel-artifact-names.bbclass`` file as
set in the ``meta/classes-recipe/kernel-artifact-names.bbclass`` file as
follows::
INITRAMFS_LINK_NAME ?= "initramfs-${KERNEL_ARTIFACT_LINK_NAME}"
@@ -3764,13 +3864,13 @@ system and gives an overview of their function and contents.
This allows the kernel to bundle an :term:`INITRAMFS_IMAGE` coming from
a separate multiconfig, this is meant to be used in addition to :term:`INITRAMFS_DEPLOY_DIR_IMAGE`.
For more information on how to bundle an initramfs image from a separate
For more information on how to bundle an :term:`Initramfs` image from a separate
multiconfig see the ":ref:`dev-manual/common-tasks:Bundling an Initramfs Image From a Separate Multiconfig`"
section in the Yocto Project Development Tasks Manual.
:term:`INITRAMFS_NAME`
The base name of the initial RAM filesystem image. This variable is
set in the ``meta/classes/kernel-artifact-names.bbclass`` file as
set in the ``meta/classes-recipe/kernel-artifact-names.bbclass`` file as
follows::
INITRAMFS_NAME ?= "initramfs-${KERNEL_ARTIFACT_NAME}"
@@ -3980,7 +4080,7 @@ system and gives an overview of their function and contents.
variable.
The value of :term:`KERNEL_ARTIFACT_NAME`, which is set in the
``meta/classes/kernel-artifact-names.bbclass`` file, has the
``meta/classes-recipe/kernel-artifact-names.bbclass`` file, has the
following default value::
KERNEL_ARTIFACT_NAME ?= "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}"
@@ -3993,7 +4093,7 @@ system and gives an overview of their function and contents.
:ref:`kernel <ref-classes-kernel>` class should inherit. You
typically append this variable to enable extended image types. An
example is the "kernel-fitimage", which enables fitImage support and
resides in ``meta/classes/kernel-fitimage.bbclass``. You can register
resides in ``meta/classes-recipe/kernel-fitimage.bbclass``. You can register
custom kernel image types with the :ref:`kernel <ref-classes-kernel>` class using this
variable.
@@ -4002,6 +4102,12 @@ system and gives an overview of their function and contents.
the kernel. The default is "0" to disable this for reproducibility
reasons.
:term:`KERNEL_DEPLOY_DEPEND`
Provides a means of controlling the dependency of an image recipe
on the kernel. The default value is "virtual/kernel:do_deploy",
however for a small initramfs image or other images that do not
need the kernel, this can be set to "" in the image recipe.
:term:`KERNEL_DEVICETREE`
Specifies the name of the generated Linux kernel device tree (i.e.
the ``.dtb``) file.
@@ -4017,7 +4123,7 @@ system and gives an overview of their function and contents.
:term:`KERNEL_DTB_LINK_NAME`
The link name of the kernel device tree binary (DTB). This variable
is set in the ``meta/classes/kernel-artifact-names.bbclass`` file as
is set in the ``meta/classes-recipe/kernel-artifact-names.bbclass`` file as
follows::
KERNEL_DTB_LINK_NAME ?= "${KERNEL_ARTIFACT_LINK_NAME}"
@@ -4033,7 +4139,7 @@ system and gives an overview of their function and contents.
:term:`KERNEL_DTB_NAME`
The base name of the kernel device tree binary (DTB). This variable
is set in the ``meta/classes/kernel-artifact-names.bbclass`` file as
is set in the ``meta/classes-recipe/kernel-artifact-names.bbclass`` file as
follows::
KERNEL_DTB_NAME ?= "${KERNEL_ARTIFACT_NAME}"
@@ -4084,7 +4190,7 @@ system and gives an overview of their function and contents.
:term:`KERNEL_FIT_LINK_NAME`
The link name of the kernel flattened image tree (FIT) image. This
variable is set in the ``meta/classes/kernel-artifact-names.bbclass``
variable is set in the ``meta/classes-recipe/kernel-artifact-names.bbclass``
file as follows::
KERNEL_FIT_LINK_NAME ?= "${KERNEL_ARTIFACT_LINK_NAME}"
@@ -4100,7 +4206,7 @@ system and gives an overview of their function and contents.
:term:`KERNEL_FIT_NAME`
The base name of the kernel flattened image tree (FIT) image. This
variable is set in the ``meta/classes/kernel-artifact-names.bbclass``
variable is set in the ``meta/classes-recipe/kernel-artifact-names.bbclass``
file as follows::
KERNEL_FIT_NAME ?= "${KERNEL_ARTIFACT_NAME}"
@@ -4112,7 +4218,7 @@ system and gives an overview of their function and contents.
:term:`KERNEL_IMAGE_LINK_NAME`
The link name for the kernel image. This variable is set in the
``meta/classes/kernel-artifact-names.bbclass`` file as follows::
``meta/classes-recipe/kernel-artifact-names.bbclass`` file as follows::
KERNEL_IMAGE_LINK_NAME ?= "${KERNEL_ARTIFACT_LINK_NAME}"
@@ -4140,7 +4246,7 @@ system and gives an overview of their function and contents.
:term:`KERNEL_IMAGE_NAME`
The base name of the kernel image. This variable is set in the
``meta/classes/kernel-artifact-names.bbclass`` file as follows::
``meta/classes-recipe/kernel-artifact-names.bbclass`` file as follows::
KERNEL_IMAGE_NAME ?= "${KERNEL_ARTIFACT_NAME}"
@@ -4240,7 +4346,7 @@ system and gives an overview of their function and contents.
:term:`KERNELDEPMODDEPEND` does not control whether or not that data
exists, but simply whether or not it is used. If you do not need to
use the data, set the :term:`KERNELDEPMODDEPEND` variable in your
``initramfs`` recipe. Setting the variable there when the data is not
:term:`Initramfs` recipe. Setting the variable there when the data is not
needed avoids a potential dependency loop.
:term:`KFEATURE_DESCRIPTION`
@@ -4875,7 +4981,7 @@ system and gives an overview of their function and contents.
:term:`MODULE_TARBALL_LINK_NAME`
The link name of the kernel module tarball. This variable is set in
the ``meta/classes/kernel-artifact-names.bbclass`` file as follows::
the ``meta/classes-recipe/kernel-artifact-names.bbclass`` file as follows::
MODULE_TARBALL_LINK_NAME ?= "${KERNEL_ARTIFACT_LINK_NAME}"
@@ -4889,7 +4995,7 @@ system and gives an overview of their function and contents.
:term:`MODULE_TARBALL_NAME`
The base name of the kernel module tarball. This variable is set in
the ``meta/classes/kernel-artifact-names.bbclass`` file as follows::
the ``meta/classes-recipe/kernel-artifact-names.bbclass`` file as follows::
MODULE_TARBALL_NAME ?= "${KERNEL_ARTIFACT_NAME}"
@@ -4898,6 +5004,11 @@ system and gives an overview of their function and contents.
KERNEL_ARTIFACT_NAME ?= "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}"
:term:`MOUNT_BASE`
On non-systemd systems (where ``udev-extraconf`` is being used),
specifies the base directory for auto-mounting filesystems. The
default value is "/run/media".
:term:`MULTIMACH_TARGET_SYS`
Uniquely identifies the type of the target system for which packages
are being built. This variable allows output for different types of
@@ -5019,7 +5130,7 @@ system and gives an overview of their function and contents.
``sysroots/`` directory so that all builds that use the script will
use the correct directories for the cross compiling layout.
See the ``meta/classes/binconfig.bbclass`` in the
See the ``meta/classes-recipe/binconfig.bbclass`` in the
:term:`Source Directory` for details on how this class
applies these additional sed command arguments.
@@ -5076,6 +5187,87 @@ system and gives an overview of their function and contents.
default by setting the variable in a custom distribution
configuration file.
:term:`OVERLAYFS_ETC_DEVICE`
When the :ref:`overlayfs-etc <ref-classes-overlayfs-etc>` class is
inherited, specifies the device to be mounted for the read/write
layer of ``/etc``. There is no default, so you must set this if you
wish to enable :ref:`overlayfs-etc <ref-classes-overlayfs-etc>`, for
example, assuming ``/dev/mmcblk0p2`` was the desired device::
OVERLAYFS_ETC_DEVICE = "/dev/mmcblk0p2"
:term:`OVERLAYFS_ETC_EXPOSE_LOWER`
When the :ref:`overlayfs-etc <ref-classes-overlayfs-etc>` class is
inherited, if set to "1" then a read-only access to the original
``/etc`` content will be provided as a ``lower/`` subdirectory of
:term:`OVERLAYFS_ETC_MOUNT_POINT`. The default value is "0".
:term:`OVERLAYFS_ETC_FSTYPE`
When the :ref:`overlayfs-etc <ref-classes-overlayfs-etc>` class is
inherited, specifies the file system type for the read/write
layer of ``/etc``. There is no default, so you must set this if you
wish to enable :ref:`overlayfs-etc <ref-classes-overlayfs-etc>`,
for example, assuming the file system is ext4::
OVERLAYFS_ETC_FSTYPE = "ext4"
:term:`OVERLAYFS_ETC_MOUNT_OPTIONS`
When the :ref:`overlayfs-etc <ref-classes-overlayfs-etc>` class is
inherited, specifies the mount options for the read-write layer.
The default value is "defaults".
:term:`OVERLAYFS_ETC_MOUNT_POINT`
When the :ref:`overlayfs-etc <ref-classes-overlayfs-etc>` class is
inherited, specifies the parent mount path for the filesystem layers.
There is no default, so you must set this if you wish to enable
:ref:`overlayfs-etc <ref-classes-overlayfs-etc>`, for example if
the desired path is "/data"::
OVERLAYFS_ETC_MOUNT_POINT = "/data"
:term:`OVERLAYFS_ETC_USE_ORIG_INIT_NAME`
When the :ref:`overlayfs-etc <ref-classes-overlayfs-etc>` class is
inherited, controls how the generated init will be named. For more
information, see the :ref:`overlayfs-etc <ref-classes-overlayfs-etc>`
class documentation. The default value is "1".
:term:`OVERLAYFS_MOUNT_POINT`
When inheriting the :ref:`overlayfs <ref-classes-overlayfs>` class,
specifies mount point(s) to be used. For example::
OVERLAYFS_MOUNT_POINT[data] = "/data"
The assumes you have a ``data.mount`` systemd unit defined elsewhere
in your BSP (e.g. in ``systemd-machine-units`` recipe) and it is
installed into the image. For more information see
:ref:`overlayfs <ref-classes-overlayfs>`.
.. note::
Although the :ref:`overlayfs <ref-classes-overlayfs>` class is
inherited by individual recipes, :term:`OVERLAYFS_MOUNT_POINT`
should be set in your machine configuration.
:term:`OVERLAYFS_QA_SKIP`
When inheriting the :ref:`overlayfs <ref-classes-overlayfs>` class,
provides the ability to disable QA checks for particular overlayfs
mounts. For example::
OVERLAYFS_QA_SKIP[data] = "mount-configured"
.. note::
Although the :ref:`overlayfs <ref-classes-overlayfs>` class is
inherited by individual recipes, :term:`OVERLAYFS_QA_SKIP`
should be set in your machine configuration.
:term:`OVERLAYFS_WRITABLE_PATHS`
When inheriting the :ref:`overlayfs <ref-classes-overlayfs>` class,
specifies writable paths used at runtime for the recipe. For
example::
OVERLAYFS_WRITABLE_PATHS[data] = "/usr/share/my-custom-application"
:term:`OVERRIDES`
A colon-separated list of overrides that currently apply. Overrides
are a BitBake mechanism that allows variables to be selectively
@@ -5395,9 +5587,9 @@ system and gives an overview of their function and contents.
:term:`IMAGE_INSTALL` variable to specify
packages for installation. The exception to this is when working with
the :ref:`core-image-minimal-initramfs <ref-manual/images:images>`
image. When working with an initial RAM filesystem (initramfs) image,
image. When working with an initial RAM filesystem (:term:`Initramfs`) image,
use the :term:`PACKAGE_INSTALL` variable. For information on creating an
initramfs, see the ":ref:`dev-manual/common-tasks:building an initial ram filesystem (initramfs) image`" section
:term:`Initramfs`, see the ":ref:`dev-manual/common-tasks:building an initial ram filesystem (Initramfs) image`" section
in the Yocto Project Development Tasks Manual.
:term:`PACKAGE_INSTALL_ATTEMPTONLY`
@@ -5521,7 +5713,7 @@ system and gives an overview of their function and contents.
:ref:`cmake <ref-classes-cmake>` use :term:`PACKAGECONFIG_CONFARGS` to
pass :term:`PACKAGECONFIG` options to ``configure`` and ``cmake``,
respectively. If you are using :term:`PACKAGECONFIG` but not a class that
handles the ``do_configure`` task, then you need to use
handles the :ref:`ref-tasks-configure` task, then you need to use
:term:`PACKAGECONFIG_CONFARGS` appropriately.
:term:`PACKAGEGROUP_DISABLE_COMPLEMENTARY`
@@ -5603,7 +5795,7 @@ system and gives an overview of their function and contents.
.. note::
If the software being built experiences dependency issues during
the ``do_compile`` task that result in race conditions, you can clear
the :ref:`ref-tasks-compile` task that result in race conditions, you can clear
the :term:`PARALLEL_MAKE` variable within the recipe as a workaround. For
information on addressing race conditions, see the
":ref:`dev-manual/common-tasks:debugging parallel make races`"
@@ -5633,7 +5825,7 @@ system and gives an overview of their function and contents.
way to ensure this is to use the ``oe_runmake`` function.
If the software being built experiences dependency issues during
the ``do_install`` task that result in race conditions, you can
the :ref:`ref-tasks-install` task that result in race conditions, you can
clear the :term:`PARALLEL_MAKEINST` variable within the recipe as a
workaround. For information on addressing race conditions, see the
":ref:`dev-manual/common-tasks:debugging parallel make races`"
@@ -6100,6 +6292,14 @@ system and gives an overview of their function and contents.
:term:`PV` is the default value of the :term:`PKGV` variable.
:term:`PYPI_PACKAGE`
When inheriting the :ref:`pypi <ref-classes-pypi>` class, specifies the
`PyPI <https://pypi.org/>`__ package name to be built. The default value
is set based upon :term:`BPN` (stripping any "python-" or "python3-"
prefix off if present), however for some packages it will need to be set
explicitly if that will not match the package name (e.g. where the
package name has a prefix, underscores, uppercase letters etc.)
:term:`PYTHON_ABI`
When used by recipes that inherit the
:ref:`setuptools3 <ref-classes-setuptools3>` class, denotes the
@@ -6200,7 +6400,7 @@ system and gives an overview of their function and contents.
The practical effect of the above :term:`RDEPENDS` assignment is that
``bar`` and ``baz`` will be declared as dependencies inside the
package ``foo`` when it is written out by one of the
:ref:`do_package_write_\* <ref-tasks-package_write_deb>` tasks.
:ref:`do_package_write_* <ref-tasks-package_write_deb>` tasks.
Exactly how this is done depends on which package format is used,
which is determined by
:term:`PACKAGE_CLASSES`. When the
@@ -6212,7 +6412,7 @@ system and gives an overview of their function and contents.
added. This dependency is from the recipe's
:ref:`ref-tasks-build` (not to be confused with
:ref:`ref-tasks-compile`) task to the
``do_package_write_*`` task of the recipes that build ``bar`` and
:ref:`do_package_write_* <ref-tasks-package_write_deb>` task of the recipes that build ``bar`` and
``baz``.
The names of the packages you list within :term:`RDEPENDS` must be the
@@ -6573,6 +6773,11 @@ system and gives an overview of their function and contents.
The target architecture for the SDK. Typically, you do not directly
set this variable. Instead, use :term:`SDKMACHINE`.
:term:`SDK_BUILDINFO_FILE`
When using the :ref:`image-buildinfo <ref-classes-image-buildinfo>` class,
specifies the file in the SDK to write the build information into. The
default value is "``/buildinfo``".
:term:`SDK_CUSTOM_TEMPLATECONF`
When building the extensible SDK, if :term:`SDK_CUSTOM_TEMPLATECONF` is set to
"1" and a ``conf/templateconf.cfg`` file exists in the build directory
@@ -6709,10 +6914,10 @@ system and gives an overview of their function and contents.
A list of shared state tasks added to the extensible SDK. By default,
the following tasks are added:
- do_populate_lic
- do_package_qa
- do_populate_sysroot
- do_deploy
- :ref:`ref-tasks-populate_lic`
- :ref:`ref-tasks-package_qa`
- :ref:`ref-tasks-populate_sysroot`
- :ref:`ref-tasks-deploy`
Despite the default value of "" for the
:term:`SDK_RECRDEP_TASKS` variable, the above four tasks are always added
@@ -6772,6 +6977,10 @@ system and gives an overview of their function and contents.
section in the Yocto Project Application Development and the
Extensible Software Development Kit (eSDK) manual.
:term:`SDK_TOOLCHAIN_LANGS`
Specifies programming languages to support in the SDK, as a
space-separated list. Currently supported items are ``rust`` and ``go``.
:term:`SDK_UPDATE_URL`
An optional URL for an update server for the extensible SDK. If set,
the value is used as the default update server when running
@@ -7382,7 +7591,7 @@ system and gives an overview of their function and contents.
For most recipes, this sysroot is the one in which that recipe's
:ref:`ref-tasks-populate_sysroot` task copies
files. Exceptions include ``-native`` recipes, where the
``do_populate_sysroot`` task instead uses
:ref:`ref-tasks-populate_sysroot` task instead uses
:term:`STAGING_DIR_NATIVE`. Depending on
the type of recipe and the build target, :term:`STAGING_DIR_HOST` can
have the following values:
@@ -8175,7 +8384,7 @@ system and gives an overview of their function and contents.
on enabling, running, and writing these tests, see the
":ref:`dev-manual/common-tasks:performing automated runtime testing`"
section in the Yocto Project Development Tasks Manual and the
":ref:`ref-classes-testimage*`" section.
":ref:`ref-classes-testimage`" section.
:term:`THISDIR`
The directory in which the file BitBake is currently parsing is
@@ -8487,6 +8696,10 @@ system and gives an overview of their function and contents.
If :term:`UBOOT_MKIMAGE_DTCOPTS` is not set then kernel-fitimage will not
pass the ``-D`` option to mkimage.
:term:`UBOOT_MKIMAGE_KERNEL_TYPE`
Specifies the type argument for the kernel as passed to ``uboot-mkimage``.
The default value is "kernel".
:term:`UBOOT_MKIMAGE_SIGN`
Specifies the name of the mkimage command as used by the
:ref:`kernel-fitimage <ref-classes-kernel-fitimage>` class to sign
@@ -8654,6 +8867,9 @@ system and gives an overview of their function and contents.
A list of classes to globally inherit. These classes are used by the
OpenEmbedded build system to enable extra features.
Classes inherited using :term:`USER_CLASSES` must be located in the
``classes-global/`` or ``classes/`` subdirectories.
The default list is set in your ``local.conf`` file::
USER_CLASSES ?= "buildstats"
@@ -8802,6 +9018,15 @@ system and gives an overview of their function and contents.
can control with this variable, see the
":ref:`ref-classes-insane`" section.
:term:`WATCHDOG_TIMEOUT`
Specifies the timeout in seconds used by the ``watchdog`` recipe and
also by ``systemd`` during reboot. The default is 60 seconds.
:term:`WIRELESS_DAEMON`
For ``connman`` and ``packagegroup-base``, specifies the wireless
daemon to use. The default is "wpa-supplicant" (note that the value
uses a dash and not an underscore).
:term:`WKS_FILE`
Specifies the location of the Wic kickstart file that is used by the
OpenEmbedded build system to create a partitioned image

View File

@@ -71,7 +71,7 @@ Setting up the Extensible SDK environment directly in a Yocto build
$ bitbake meta-ide-support
$ bitbake -c populate_sysroot gtk+3
(or any other target or native item that the application developer would need)
$ bitbake populate-sysroots
$ bitbake build-sysroots
Setting up the Extensible SDK from a standalone installer
@@ -1112,7 +1112,7 @@ links created within the source tree:
``${``\ :term:`D`\ ``}``.
- ``sysroot-destdir/``: Contains a subset of files installed within
``do_install`` that have been put into the shared sysroot. For
:ref:`ref-tasks-install` that have been put into the shared sysroot. For
more information, see the
":ref:`dev-manual/common-tasks:sharing files between recipes`" section.
@@ -1274,7 +1274,7 @@ is directly accessible to build additional items, and it
can simply be executed directly:
$ bitbake mesa
$ bitbake populate-sysroots
$ bitbake build-sysroots
When using a standalone installer for the Extensible SDK
--------------------------------------------------------

View File

@@ -26,8 +26,8 @@ ourversion = None
if len(sys.argv) == 2:
ourversion = sys.argv[1]
activereleases = ["kirkstone", "dunfell"]
devbranch = "langdale"
activereleases = ["langdale", "kirkstone", "dunfell"]
devbranch = "mickledore"
ltsseries = ["kirkstone", "dunfell"]
# used by run-docs-builds to get the default page
@@ -36,6 +36,7 @@ if ourversion == "getlatest":
sys.exit(0)
release_series = collections.OrderedDict()
release_series["mickledore"] = "4.2"
release_series["langdale"] = "4.1"
release_series["kirkstone"] = "4.0"
release_series["honister"] = "3.4"
@@ -65,6 +66,7 @@ release_series["laverne"] = "0.9"
bitbake_mapping = {
"mickledore" : "2.4",
"langdale" : "2.2",
"kirkstone" : "2.0",
"honister" : "1.52",

View File

@@ -132,8 +132,8 @@ the following types of tests:
$ bitbake image -c testimage
The tests utilize the :ref:`testimage* <ref-classes-testimage*>`
classes and the :ref:`ref-tasks-testimage` task.
The tests utilize the :ref:`testimage <ref-classes-testimage>`
class and the :ref:`ref-tasks-testimage` task.
- *Layer Testing:* The Autobuilder has the possibility to test whether
specific layers work with the test of the system. The layers tested

View File

@@ -56,7 +56,7 @@ the "templates" section, which looks like::
Combining these two entries you can see that "qemux86-64" is a three step build where the
``bitbake BBTARGETS`` would be run, then ``bitbake SANITYTARGETS`` for each step; all for
``MACHINE="qemx86-64"`` but with differing SDKMACHINE settings. In step
``MACHINE="qemux86-64"`` but with differing SDKMACHINE settings. In step
1 an extra variable is added to the ``auto.conf`` file to enable wic
image generation.

View File

@@ -1,7 +1,7 @@
DISTRO = "poky"
DISTRO_NAME = "Poky (Yocto Project Reference Distro)"
#DISTRO_VERSION = "4.1+snapshot-${METADATA_REVISION}"
DISTRO_VERSION = "4.1"
DISTRO_VERSION = "4.1.1"
DISTRO_CODENAME = "langdale"
SDK_VENDOR = "-pokysdk"
SDK_VERSION = "${@d.getVar('DISTRO_VERSION').replace('snapshot-${METADATA_REVISION}', 'snapshot')}"
@@ -38,7 +38,6 @@ SANITY_TESTED_DISTROS ?= " \
poky-4.1 \n \
ubuntu-18.04 \n \
ubuntu-20.04 \n \
ubuntu-21.10 \n \
ubuntu-22.04 \n \
fedora-34 \n \
fedora-35 \n \

View File

@@ -555,7 +555,10 @@ python populate_lic_qa_checksum() {
import hashlib
lineno = 0
license = []
m = hashlib.new('MD5', usedforsecurity=False)
try:
m = hashlib.new('MD5', usedforsecurity=False)
except TypeError:
m = hashlib.new('MD5')
for line in f:
lineno += 1
if (lineno >= beginline):

View File

@@ -90,6 +90,7 @@ BB_GIT_SHALLOW:pn-binutils-cross-${TARGET_ARCH} = "1"
BB_GIT_SHALLOW:pn-binutils-cross-canadian-${TRANSLATED_TARGET_ARCH} = "1"
BB_GIT_SHALLOW:pn-binutils-cross-testsuite = "1"
BB_GIT_SHALLOW:pn-binutils-crosssdk-${SDK_SYS} = "1"
BB_GIT_SHALLOW:pn-binutils-native = "1"
BB_GIT_SHALLOW:pn-glibc = "1"
PREMIRRORS += "git://sourceware.org/git/glibc.git https://downloads.yoctoproject.org/mirror/sources/ \
git://sourceware.org/git/binutils-gdb.git https://downloads.yoctoproject.org/mirror/sources/"

View File

@@ -504,6 +504,14 @@ def check_tar_version(sanity_data):
version = result.split()[3]
if bb.utils.vercmp_string_op(version, "1.28", "<"):
return "Your version of tar is older than 1.28 and does not have the support needed to enable reproducible builds. Please install a newer version of tar (you could use the project's buildtools-tarball from our last release or use scripts/install-buildtools).\n"
try:
result = subprocess.check_output(["tar", "--help"], stderr=subprocess.STDOUT).decode('utf-8')
if "--xattrs" not in result:
return "Your tar doesn't support --xattrs, please use GNU tar.\n"
except subprocess.CalledProcessError as e:
return "Unable to execute tar --help, exit code %d\n%s\n" % (e.returncode, e.output)
return None
# We use git parameters and functionality only found in 1.7.8 or later
@@ -865,7 +873,7 @@ def check_sanity_everybuild(status, d):
mirror_vars = ['MIRRORS', 'PREMIRRORS', 'SSTATE_MIRRORS']
protocols = ['http', 'ftp', 'file', 'https', \
'git', 'gitsm', 'hg', 'osc', 'p4', 'svn', \
'bzr', 'cvs', 'npm', 'sftp', 'ssh', 's3', 'az', 'ftps']
'bzr', 'cvs', 'npm', 'sftp', 'ssh', 's3', 'az', 'ftps', 'crate']
for mirror_var in mirror_vars:
mirrors = (d.getVar(mirror_var) or '').replace('\\n', ' ').split()

View File

@@ -496,7 +496,7 @@ fitimage_assemble() {
ramdiskcount=$3
setupcount=""
bootscr_id=""
rm -f $1 arch/${ARCH}/boot/$2
rm -f $1 ${KERNEL_OUTPUT_DIR}/$2
if [ -n "${UBOOT_SIGN_IMG_KEYNAME}" -a "${UBOOT_SIGN_KEYNAME}" = "${UBOOT_SIGN_IMG_KEYNAME}" ]; then
bbfatal "Keys used to sign images and configuration nodes must be different."
@@ -529,9 +529,9 @@ fitimage_assemble() {
continue
fi
DTB_PATH="arch/${ARCH}/boot/dts/$DTB"
DTB_PATH="${KERNEL_OUTPUT_DIR}/dts/$DTB"
if [ ! -e "$DTB_PATH" ]; then
DTB_PATH="arch/${ARCH}/boot/$DTB"
DTB_PATH="${KERNEL_OUTPUT_DIR}/$DTB"
fi
DTB=$(echo "$DTB" | tr '/' '_')
@@ -574,9 +574,9 @@ fitimage_assemble() {
#
# Step 4: Prepare a setup section. (For x86)
#
if [ -e arch/${ARCH}/boot/setup.bin ]; then
if [ -e ${KERNEL_OUTPUT_DIR}/setup.bin ]; then
setupcount=1
fitimage_emit_section_setup $1 $setupcount arch/${ARCH}/boot/setup.bin
fitimage_emit_section_setup $1 $setupcount ${KERNEL_OUTPUT_DIR}/setup.bin
fi
#
@@ -650,7 +650,7 @@ fitimage_assemble() {
${UBOOT_MKIMAGE} \
${@'-D "${UBOOT_MKIMAGE_DTCOPTS}"' if len('${UBOOT_MKIMAGE_DTCOPTS}') else ''} \
-f $1 \
arch/${ARCH}/boot/$2
${KERNEL_OUTPUT_DIR}/$2
#
# Step 8: Sign the image and add public key to U-Boot dtb
@@ -667,7 +667,7 @@ fitimage_assemble() {
${@'-D "${UBOOT_MKIMAGE_DTCOPTS}"' if len('${UBOOT_MKIMAGE_DTCOPTS}') else ''} \
-F -k "${UBOOT_SIGN_KEYDIR}" \
$add_key_to_u_boot \
-r arch/${ARCH}/boot/$2 \
-r ${KERNEL_OUTPUT_DIR}/$2 \
${UBOOT_MKIMAGE_SIGN_ARGS}
fi
}
@@ -770,7 +770,7 @@ kernel_do_deploy:append() {
if [ "${INITRAMFS_IMAGE_BUNDLE}" != "1" ]; then
bbnote "Copying fitImage-${INITRAMFS_IMAGE} file..."
install -m 0644 ${B}/arch/${ARCH}/boot/fitImage-${INITRAMFS_IMAGE} "$deployDir/fitImage-${INITRAMFS_IMAGE_NAME}-${KERNEL_FIT_NAME}${KERNEL_FIT_BIN_EXT}"
install -m 0644 ${B}/${KERNEL_OUTPUT_DIR}/fitImage-${INITRAMFS_IMAGE} "$deployDir/fitImage-${INITRAMFS_IMAGE_NAME}-${KERNEL_FIT_NAME}${KERNEL_FIT_BIN_EXT}"
if [ -n "${KERNEL_FIT_LINK_NAME}" ] ; then
ln -snf fitImage-${INITRAMFS_IMAGE_NAME}-${KERNEL_FIT_NAME}${KERNEL_FIT_BIN_EXT} "$deployDir/fitImage-${INITRAMFS_IMAGE_NAME}-${KERNEL_FIT_LINK_NAME}"
fi

View File

@@ -506,7 +506,7 @@ python do_config_analysis() {
try:
analysis = subprocess.check_output(['symbol_why.py', '--dotconfig', '{}'.format( d.getVar('B') + '/.config' ), '--blame', c], cwd=s, env=env ).decode('utf-8')
except subprocess.CalledProcessError as e:
bb.fatal( "config analysis failed: %s" % e.output.decode('utf-8'))
bb.fatal( "config analysis failed when running '%s': %s" % (" ".join(e.cmd), e.output.decode('utf-8')))
outfile = d.getVar( 'CONFIG_ANALYSIS_FILE' )
@@ -514,7 +514,7 @@ python do_config_analysis() {
try:
analysis = subprocess.check_output(['symbol_why.py', '--dotconfig', '{}'.format( d.getVar('B') + '/.config' ), '--summary', '--extended', '--sanity', c], cwd=s, env=env ).decode('utf-8')
except subprocess.CalledProcessError as e:
bb.fatal( "config analysis failed: %s" % e.output.decode('utf-8'))
bb.fatal( "config analysis failed when running '%s': %s" % (" ".join(e.cmd), e.output.decode('utf-8')))
outfile = d.getVar( 'CONFIG_AUDIT_FILE' )
@@ -575,7 +575,7 @@ python do_kernel_configcheck() {
try:
analysis = subprocess.check_output(['symbol_why.py', '--dotconfig', '{}'.format( d.getVar('B') + '/.config' ), '--mismatches', extra_params], cwd=s, env=env ).decode('utf-8')
except subprocess.CalledProcessError as e:
bb.fatal( "config analysis failed: %s" % e.output.decode('utf-8'))
bb.fatal( "config analysis failed when running '%s': %s" % (" ".join(e.cmd), e.output.decode('utf-8')))
if analysis:
outfile = "{}/{}/cfg/mismatch.txt".format( s, kmeta )
@@ -597,7 +597,7 @@ python do_kernel_configcheck() {
try:
analysis = subprocess.check_output(['symbol_why.py', '--dotconfig', '{}'.format( d.getVar('B') + '/.config' ), '--invalid', extra_params], cwd=s, env=env ).decode('utf-8')
except subprocess.CalledProcessError as e:
bb.fatal( "config analysis failed: %s" % e.output.decode('utf-8'))
bb.fatal( "config analysis failed when running '%s': %s" % (" ".join(e.cmd), e.output.decode('utf-8')))
if analysis:
outfile = "{}/{}/cfg/invalid.txt".format(s,kmeta)
@@ -616,7 +616,7 @@ python do_kernel_configcheck() {
try:
analysis = subprocess.check_output(['symbol_why.py', '--dotconfig', '{}'.format( d.getVar('B') + '/.config' ), '--sanity'], cwd=s, env=env ).decode('utf-8')
except subprocess.CalledProcessError as e:
bb.fatal( "config analysis failed: %s" % e.output.decode('utf-8'))
bb.fatal( "config analysis failed when running '%s': %s" % (" ".join(e.cmd), e.output.decode('utf-8')))
if analysis:
outfile = "{}/{}/cfg/redefinition.txt".format(s,kmeta)

View File

@@ -594,9 +594,7 @@ do_shared_workdir () {
}
# We don't need to stage anything, not the modules/firmware since those would clash with linux-firmware
sysroot_stage_all () {
:
}
SYSROOT_DIRS = ""
KERNEL_CONFIG_COMMAND ?= "oe_runmake_call -C ${S} O=${B} olddefconfig || oe_runmake -C ${S} O=${B} oldnoconfig"

View File

@@ -102,7 +102,11 @@ python do_create_overlayfs_units() {
overlayMountPoints = d.getVarFlags("OVERLAYFS_MOUNT_POINT")
for mountPoint in overlayMountPoints:
bb.debug(1, "Process variable flag %s" % mountPoint)
for lower in d.getVarFlag('OVERLAYFS_WRITABLE_PATHS', mountPoint).split():
lowerList = d.getVarFlag('OVERLAYFS_WRITABLE_PATHS', mountPoint)
if not lowerList:
bb.note("No mount points defined for %s flag, skipping" % (mountPoint))
continue
for lower in lowerList.split():
bb.debug(1, "Prepare mount unit for %s with data mount point %s" %
(lower, d.getVarFlag('OVERLAYFS_MOUNT_POINT', mountPoint)))
prepareUnits(d.getVarFlag('OVERLAYFS_MOUNT_POINT', mountPoint), lower)

View File

@@ -15,7 +15,7 @@ COMPLEMENTARY_GLOB[staticdev-pkgs] = '*-staticdev'
COMPLEMENTARY_GLOB[doc-pkgs] = '*-doc'
COMPLEMENTARY_GLOB[dbg-pkgs] = '*-dbg'
COMPLEMENTARY_GLOB[src-pkgs] = '*-src'
COMPLEMENTARY_GLOB[ptest-pkgs] = '*-ptest'
COMPLEMENTARY_GLOB[ptest-pkgs] = '*-ptest ptest-runner'
COMPLEMENTARY_GLOB[bash-completion-pkgs] = '*-bash-completion'
def complementary_globs(featurevar, d):

View File

@@ -231,19 +231,19 @@ TARGET_POINTER_WIDTH[powerpc64le] = "64"
TARGET_C_INT_WIDTH[powerpc64le] = "64"
MAX_ATOMIC_WIDTH[powerpc64le] = "64"
## riscv32-unknown-linux-{gnu, musl}
DATA_LAYOUT[riscv32] = "e-m:e-p:32:32-i64:64-n32-S128"
TARGET_ENDIAN[riscv32] = "little"
TARGET_POINTER_WIDTH[riscv32] = "32"
TARGET_C_INT_WIDTH[riscv32] = "32"
MAX_ATOMIC_WIDTH[riscv32] = "32"
## riscv32gc-unknown-linux-{gnu, musl}
DATA_LAYOUT[riscv32gc] = "e-m:e-p:32:32-i64:64-n32-S128"
TARGET_ENDIAN[riscv32gc] = "little"
TARGET_POINTER_WIDTH[riscv32gc] = "32"
TARGET_C_INT_WIDTH[riscv32gc] = "32"
MAX_ATOMIC_WIDTH[riscv32gc] = "32"
## riscv64-unknown-linux-{gnu, musl}
DATA_LAYOUT[riscv64] = "e-m:e-p:64:64-i64:64-i128:128-n64-S128"
TARGET_ENDIAN[riscv64] = "little"
TARGET_POINTER_WIDTH[riscv64] = "64"
TARGET_C_INT_WIDTH[riscv64] = "64"
MAX_ATOMIC_WIDTH[riscv64] = "64"
## riscv64gc-unknown-linux-{gnu, musl}
DATA_LAYOUT[riscv64gc] = "e-m:e-p:64:64-i64:64-i128:128-n64-S128"
TARGET_ENDIAN[riscv64gc] = "little"
TARGET_POINTER_WIDTH[riscv64gc] = "64"
TARGET_C_INT_WIDTH[riscv64gc] = "64"
MAX_ATOMIC_WIDTH[riscv64gc] = "64"
# Convert a normal arch (HOST_ARCH, TARGET_ARCH, BUILD_ARCH, etc) to something
# rust's internals won't choke on.
@@ -258,9 +258,21 @@ def arch_to_rust_target_arch(arch):
return "arm"
elif arch == "powerpc64le":
return "powerpc64"
elif arch == "riscv32gc":
return "riscv32"
elif arch == "riscv64gc":
return "riscv64"
else:
return arch
# Convert a rust target string to a llvm-compatible triplet
def rust_sys_to_llvm_target(sys):
if sys.startswith('riscv32gc-'):
return sys.replace('riscv32gc-', 'riscv32-', 1)
if sys.startswith('riscv64gc-'):
return sys.replace('riscv64gc-', 'riscv64-', 1)
return sys
# generates our target CPU value
def llvm_cpu(d):
cpu = d.getVar('PACKAGE_ARCH')
@@ -334,7 +346,7 @@ def rust_gen_target(d, thing, wd, arch):
# build tspec
tspec = {}
tspec['llvm-target'] = rustsys
tspec['llvm-target'] = rust_sys_to_llvm_target(rustsys)
tspec['data-layout'] = d.getVarFlag('DATA_LAYOUT', arch_abi)
if tspec['data-layout'] is None:
bb.fatal("No rust target defined for %s" % arch_abi)

View File

@@ -298,7 +298,7 @@ do_uboot_generate_rsa_keys() {
"${UBOOT_FIT_SIGN_NUMBITS}"
echo "Generating certificate for signing U-Boot fitImage"
openssl req ${FIT_KEY_REQ_ARGS} "${UBOOT_FIT_KEY_SIGN_PKCS}" \
openssl req ${UBOOT_FIT_KEY_REQ_ARGS} "${UBOOT_FIT_KEY_SIGN_PKCS}" \
-key "${SPL_SIGN_KEYDIR}/${SPL_SIGN_KEYNAME}".key \
-out "${SPL_SIGN_KEYDIR}/${SPL_SIGN_KEYNAME}".crt
fi

View File

@@ -21,7 +21,6 @@ SPDX_TOOL_VERSION ??= "1.0"
SPDXRUNTIMEDEPLOY = "${SPDXDIR}/runtime-deploy"
SPDX_INCLUDE_SOURCES ??= "0"
SPDX_INCLUDE_PACKAGED ??= "0"
SPDX_ARCHIVE_SOURCES ??= "0"
SPDX_ARCHIVE_PACKAGED ??= "0"
@@ -431,7 +430,6 @@ python do_create_spdx() {
deploy_dir_spdx = Path(d.getVar("DEPLOY_DIR_SPDX"))
spdx_workdir = Path(d.getVar("SPDXWORK"))
include_packaged = d.getVar("SPDX_INCLUDE_PACKAGED") == "1"
include_sources = d.getVar("SPDX_INCLUDE_SOURCES") == "1"
archive_sources = d.getVar("SPDX_ARCHIVE_SOURCES") == "1"
archive_packaged = d.getVar("SPDX_ARCHIVE_PACKAGED") == "1"
@@ -459,6 +457,7 @@ python do_create_spdx() {
for s in d.getVar('SRC_URI').split():
if not s.startswith("file://"):
s = s.split(';')[0]
recipe.downloadLocation = s
break
else:

View File

@@ -61,7 +61,7 @@ python () {
if externalsrcbuild:
d.setVar('B', externalsrcbuild)
else:
d.setVar('B', '${WORKDIR}/${BPN}-${PV}/')
d.setVar('B', '${WORKDIR}/${BPN}-${PV}')
local_srcuri = []
fetch = bb.fetch2.Fetch((d.getVar('SRC_URI') or '').split(), d)
@@ -212,8 +212,8 @@ def srctree_hash_files(d, srcdir=None):
try:
git_dir = os.path.join(s_dir,
subprocess.check_output(['git', '-C', s_dir, 'rev-parse', '--git-dir'], stderr=subprocess.DEVNULL).decode("utf-8").rstrip())
top_git_dir = os.path.join(s_dir, subprocess.check_output(['git', '-C', d.getVar("TOPDIR"), 'rev-parse', '--git-dir'],
stderr=subprocess.DEVNULL).decode("utf-8").rstrip())
top_git_dir = os.path.join(d.getVar("TOPDIR"),
subprocess.check_output(['git', '-C', d.getVar("TOPDIR"), 'rev-parse', '--git-dir'], stderr=subprocess.DEVNULL).decode("utf-8").rstrip())
if git_dir == top_git_dir:
git_dir = None
except subprocess.CalledProcessError:

View File

@@ -17,4 +17,5 @@ https?://.*/.* ${SOURCE_MIRROR_URL} \
ftp://.*/.* ${SOURCE_MIRROR_URL} \
npm://.*/?.* ${SOURCE_MIRROR_URL} \
s3://.*/.* ${SOURCE_MIRROR_URL} \
crate://.*/.* ${SOURCE_MIRROR_URL} \
"

View File

@@ -64,7 +64,7 @@ TEMPLATECONF={} . {}/oe-init-build-env build-try-{}"""
oecore = None
for l in layers:
if l[0] == os.path.abspath(args.layerpath):
if os.path.abspath(l[0]) == os.path.abspath(args.layerpath):
targetlayer = l[0]
if l[1] == 'meta':
oecore = os.path.dirname(l[0])

View File

@@ -40,7 +40,11 @@ def unitFileList(d):
bb.fatal("Missing required mount point for OVERLAYFS_MOUNT_POINT[%s] in your MACHINE configuration" % mountPoint)
for mountPoint in overlayMountPoints:
for path in d.getVarFlag('OVERLAYFS_WRITABLE_PATHS', mountPoint).split():
mountPointList = d.getVarFlag('OVERLAYFS_WRITABLE_PATHS', mountPoint)
if not mountPointList:
bb.debug(1, "No mount points defined for %s flag, don't add to file list", mountPoint)
continue
for path in mountPointList.split():
fileList.append(mountUnitName(path))
fileList.append(helperUnitName(path))

View File

@@ -98,11 +98,15 @@ class RpmPM(PackageManager):
archs = ["sdk_provides_dummy_target"] + archs
confdir = "%s/%s" %(self.target_rootfs, "etc/dnf/vars/")
bb.utils.mkdirhier(confdir)
open(confdir + "arch", 'w').write(":".join(archs))
distro_codename = self.d.getVar('DISTRO_CODENAME')
open(confdir + "releasever", 'w').write(distro_codename if distro_codename is not None else '')
with open(confdir + "arch", 'w') as f:
f.write(":".join(archs))
open(oe.path.join(self.target_rootfs, "etc/dnf/dnf.conf"), 'w').write("")
distro_codename = self.d.getVar('DISTRO_CODENAME')
with open(confdir + "releasever", 'w') as f:
f.write(distro_codename if distro_codename is not None else '')
with open(oe.path.join(self.target_rootfs, "etc/dnf/dnf.conf"), 'w') as f:
f.write("")
def _configure_rpm(self):
@@ -112,14 +116,17 @@ class RpmPM(PackageManager):
platformconfdir = "%s/%s" %(self.target_rootfs, "etc/rpm/")
rpmrcconfdir = "%s/%s" %(self.target_rootfs, "etc/")
bb.utils.mkdirhier(platformconfdir)
open(platformconfdir + "platform", 'w').write("%s-pc-linux" % self.primary_arch)
with open(platformconfdir + "platform", 'w') as f:
f.write("%s-pc-linux" % self.primary_arch)
with open(rpmrcconfdir + "rpmrc", 'w') as f:
f.write("arch_compat: %s: %s\n" % (self.primary_arch, self.archs if len(self.archs) > 0 else self.primary_arch))
f.write("buildarch_compat: %s: noarch\n" % self.primary_arch)
open(platformconfdir + "macros", 'w').write("%_transaction_color 7\n")
with open(platformconfdir + "macros", 'w') as f:
f.write("%_transaction_color 7\n")
if self.d.getVar('RPM_PREFER_ELF_ARCH'):
open(platformconfdir + "macros", 'a').write("%%_prefer_color %s" % (self.d.getVar('RPM_PREFER_ELF_ARCH')))
with open(platformconfdir + "macros", 'a') as f:
f.write("%%_prefer_color %s" % (self.d.getVar('RPM_PREFER_ELF_ARCH')))
if self.d.getVar('RPM_SIGN_PACKAGES') == '1':
signer = get_signer(self.d, self.d.getVar('RPM_GPG_BACKEND'))
@@ -166,13 +173,13 @@ class RpmPM(PackageManager):
repo_uri = uri + "/" + arch
repo_id = "oe-remote-repo" + "-".join(urlparse(repo_uri).path.split("/"))
repo_name = "OE Remote Repo:" + " ".join(urlparse(repo_uri).path.split("/"))
open(oe.path.join(self.target_rootfs, "etc", "yum.repos.d", repo_base + ".repo"), 'a').write(
"[%s]\nname=%s\nbaseurl=%s\n%s\n" % (repo_id, repo_name, repo_uri, gpg_opts))
with open(oe.path.join(self.target_rootfs, "etc", "yum.repos.d", repo_base + ".repo"), 'a') as f:
f.write("[%s]\nname=%s\nbaseurl=%s\n%s\n" % (repo_id, repo_name, repo_uri, gpg_opts))
else:
repo_name = "OE Remote Repo:" + " ".join(urlparse(uri).path.split("/"))
repo_uri = uri
open(oe.path.join(self.target_rootfs, "etc", "yum.repos.d", repo_base + ".repo"), 'w').write(
"[%s]\nname=%s\nbaseurl=%s\n%s" % (repo_base, repo_name, repo_uri, gpg_opts))
with open(oe.path.join(self.target_rootfs, "etc", "yum.repos.d", repo_base + ".repo"), 'w') as f:
f.write("[%s]\nname=%s\nbaseurl=%s\n%s" % (repo_base, repo_name, repo_uri, gpg_opts))
def _prepare_pkg_transaction(self):
os.environ['D'] = self.target_rootfs
@@ -331,7 +338,8 @@ class RpmPM(PackageManager):
return e.output.decode("utf-8")
def dump_install_solution(self, pkgs):
open(self.solution_manifest, 'w').write(" ".join(pkgs))
with open(self.solution_manifest, 'w') as f:
f.write(" ".join(pkgs))
return pkgs
def load_old_install_solution(self):
@@ -365,7 +373,8 @@ class RpmPM(PackageManager):
bb.utils.mkdirhier(target_path)
num = self._script_num_prefix(target_path)
saved_script_name = oe.path.join(target_path, "%d-%s" % (num, pkg))
open(saved_script_name, 'w').write(output)
with open(saved_script_name, 'w') as f:
f.write(output)
os.chmod(saved_script_name, 0o755)
def _handle_intercept_failure(self, registered_pkgs):

View File

@@ -8,4 +8,6 @@
def arch_to_rust_arch(arch):
if arch == "ppc64le":
return "powerpc64le"
if arch in ('riscv32', 'riscv64'):
return arch + 'gc'
return arch

View File

@@ -50,8 +50,8 @@ COMPATIBLE_HOST = "${GRUB_COMPATIBLE_HOST}"
# Grub doesn't support hard float toolchain and won't be able to forcefully
# disable it on some of the target CPUs. See 'configure.ac' for
# supported/unsupported CPUs in hardfp.
COMPATIBLE_HOST:armv7a = "${@'null' if d.getVar('TUNE_CCARGS_MFLOAT') == 'hardfp' else d.getVar('GRUB_COMPATIBLE_HOST')}"
COMPATIBLE_HOST:armv7ve = "${@'null' if d.getVar('TUNE_CCARGS_MFLOAT') == 'hardfp' else d.getVar('GRUB_COMPATIBLE_HOST')}"
COMPATIBLE_HOST:armv7a = "${@'null' if bb.utils.contains('TUNE_CCARGS_MFLOAT', 'hard', True, False, d) else d.getVar('GRUB_COMPATIBLE_HOST')}"
COMPATIBLE_HOST:armv7ve = "${@'null' if bb.utils.contains('TUNE_CCARGS_MFLOAT', 'hard', True, False, d) else d.getVar('GRUB_COMPATIBLE_HOST')}"
# configure.ac has code to set this automagically from the target tuple
# but the OE freeform one (core2-foo-bar-linux) don't work with that.

View File

@@ -5,7 +5,7 @@ PACKAGE_ARCH = "${MACHINE_ARCH}"
DEPENDS += "${@bb.utils.contains('UBOOT_ENV_SUFFIX', 'scr', 'u-boot-mkimage-native', '', d)}"
inherit uboot-config uboot-extlinux-config uboot-sign deploy cml1 python3native kernel-arch
inherit uboot-config uboot-extlinux-config uboot-sign deploy python3native kernel-arch
DEPENDS += "swig-native"
@@ -26,6 +26,13 @@ UBOOT_LOCALVERSION ?= ""
require u-boot-configure.inc
do_savedefconfig() {
bbplain "Saving defconfig to:\n${B}/defconfig"
oe_runmake -C ${B} savedefconfig
}
do_savedefconfig[nostamp] = "1"
addtask savedefconfig after do_configure
do_compile () {
if [ "${@bb.utils.filter('DISTRO_FEATURES', 'ld-is-gold', d)}" ]; then
sed -i 's/$(CROSS_COMPILE)ld$/$(CROSS_COMPILE)ld.bfd/g' ${S}/config.mk

View File

@@ -7,6 +7,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \
file://COPYING.LIB;md5=fb504b67c50331fc78734fed90fb0e09 \
file://src/main.c;beginline=1;endline=24;md5=0ad83ca0dc37ab08af448777c581e7ac"
DEPENDS = "dbus glib-2.0"
RDEPENDS:${PN} += "dbus"
PROVIDES += "bluez-hcidump"
RPROVIDES:${PN} += "bluez-hcidump"

View File

@@ -1 +1,5 @@
export OPENSSL_CONF="$OECORE_NATIVE_SYSROOT/usr/lib/ssl/openssl.cnf"
export SSL_CERT_DIR="$OECORE_NATIVE_SYSROOT/usr/lib/ssl/certs"
export SSL_CERT_FILE="$OECORE_NATIVE_SYSROOT/usr/lib/ssl/certs/ca-certificates.crt"
export OPENSSL_MODULES="$OECORE_NATIVE_SYSROOT/usr/lib/ossl-modules/"
export OPENSSL_ENGINES="$OECORE_NATIVE_SYSROOT/usr/lib/engines-3"

View File

@@ -18,7 +18,7 @@ SRC_URI:append:class-nativesdk = " \
file://environment.d-openssl.sh \
"
SRC_URI[sha256sum] = "aa7d8d9bef71ad6525c55ba11e5f4397889ce49c2c9349dcea6d3e4f0b024a7a"
SRC_URI[sha256sum] = "83049d042a260e696f62406ac5c08bf706fd84383f945cf21bd61e9ed95c396e"
inherit lib_package multilib_header multilib_script ptest perlnative
MULTILIB_SCRIPTS = "${PN}-bin:${bindir}/c_rehash"

View File

@@ -12,8 +12,6 @@ DEPENDS = "zlib virtual/crypt"
RPROVIDES:${PN} = "ssh sshd"
RCONFLICTS:${PN} = "openssh-sshd openssh"
DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
SRC_URI = "http://matt.ucc.asn.au/dropbear/releases/dropbear-${PV}.tar.bz2 \
file://0001-urandom-xauth-changes-to-options.h.patch \
file://init \
@@ -36,8 +34,6 @@ PAM_PLUGINS = "libpam-runtime \
pam-plugin-permit \
pam-plugin-unix \
"
RDEPENDS:${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_PLUGINS}', '', d)}"
inherit autotools update-rc.d systemd
CVE_PRODUCT = "dropbear_ssh"
@@ -51,14 +47,12 @@ SBINCOMMANDS = "dropbear dropbearkey dropbearconvert"
BINCOMMANDS = "dbclient ssh scp"
EXTRA_OEMAKE = 'MULTI=1 SCPPROGRESS=1 PROGRAMS="${SBINCOMMANDS} ${BINCOMMANDS}"'
PACKAGECONFIG ?= "disable-weak-ciphers"
PACKAGECONFIG ?= "disable-weak-ciphers ${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}"
PACKAGECONFIG[pam] = "--enable-pam,--disable-pam,libpam,${PAM_PLUGINS}"
PACKAGECONFIG[system-libtom] = "--disable-bundled-libtom,--enable-bundled-libtom,libtommath libtomcrypt"
PACKAGECONFIG[disable-weak-ciphers] = ""
PACKAGECONFIG[enable-x11-forwarding] = ""
EXTRA_OECONF += "\
${@bb.utils.contains('DISTRO_FEATURES', 'pam', '--enable-pam', '--disable-pam', d)}"
# This option appends to CFLAGS and LDFLAGS from OE
# This is causing [textrel] QA warning
EXTRA_OECONF += "--disable-harden"

View File

@@ -0,0 +1,51 @@
Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2990]
Signed-off-by: Ross Burton <ross.burton@arm.com>
From 14838522a706ebdcc3cdab661d4c368099fe3a4e Mon Sep 17 00:00:00 2001
From: Ross Burton <ross.burton@arm.com>
Date: Tue, 6 Jul 2021 19:26:03 +0100
Subject: [PATCH] gio/tests/g-file-info: don't assume million-in-one events
don't happen
The access and creation time tests create a file, gets the time in
seconds, then gets the time in microseconds and assumes that the
difference between the two has to be above 0.
As rare as this may be, it can happen:
$ stat g-file-info-test-50A450 -c %y
2021-07-06 18:24:56.000000767 +0100
Change the test to simply assert that the difference not negative to
handle this case.
This is the same fix as 289f8b, but that was just modification time.
---
gio/tests/g-file-info.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/gio/tests/g-file-info.c b/gio/tests/g-file-info.c
index 59411c3a8..a213e4b92 100644
--- a/gio/tests/g-file-info.c
+++ b/gio/tests/g-file-info.c
@@ -239,7 +239,7 @@ test_g_file_info_access_time (void)
g_assert_nonnull (dt_usecs);
ts = g_date_time_difference (dt_usecs, dt);
- g_assert_cmpint (ts, >, 0);
+ g_assert_cmpint (ts, >=, 0);
g_assert_cmpint (ts, <, G_USEC_PER_SEC);
/* Try round-tripping the access time. */
@@ -316,7 +316,7 @@ test_g_file_info_creation_time (void)
g_assert_nonnull (dt_usecs);
ts = g_date_time_difference (dt_usecs, dt);
- g_assert_cmpint (ts, >, 0);
+ g_assert_cmpint (ts, >=, 0);
g_assert_cmpint (ts, <, G_USEC_PER_SEC);
/* Try round-tripping the creation time. */
--
2.34.1

View File

@@ -16,6 +16,7 @@ SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \
file://0001-Do-not-write-bindir-into-pkg-config-files.patch \
file://0001-meson-Run-atomics-test-on-clang-as-well.patch \
file://0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch \
file://0001-gio-tests-g-file-info-don-t-assume-million-in-one-ev.patch \
"
SRC_URI:append:class-native = " file://relocate-modules.patch"

View File

@@ -16,7 +16,7 @@ SRC_URI = "git://salsa.debian.org/debian/ifupdown.git;protocol=https;branch=mast
file://0001-ifupdown-skip-wrong-test-case.patch \
${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'file://tweak-ptest-script.patch', '', d)} \
"
SRCREV = "2b4138f36ce3ba37186aa01b502273e0c39ab518"
SRCREV = "be91dd267b4a8db502a6bbf5758563f7048b8078"
S = "${WORKDIR}/git"

View File

@@ -24,8 +24,8 @@ IMAGE_FSTYPES = "wic.vmdk wic.vhd wic.vhdx"
inherit core-image setuptools3
SRCREV ?= "4f942c272d4417b5b719df25b80a6a6b54669a73"
SRC_URI = "git://git.yoctoproject.org/poky;branch=master \
SRCREV ?= "80d22fc07f6284094f84d5001b8129b90c28df2c"
SRC_URI = "git://git.yoctoproject.org/poky;branch=langdale \
file://Yocto_Build_Appliance.vmx \
file://Yocto_Build_Appliance.vmxf \
file://README_VirtualBox_Guest_Additions.txt \

View File

@@ -72,6 +72,8 @@ create_sdk_files:append () {
if [ -e "${SDK_OUTPUT}${SDKPATHNATIVE}${sysconfdir}/ssl/certs/ca-certificates.crt" ]; then
echo 'export GIT_SSL_CAINFO="${SDKPATHNATIVE}${sysconfdir}/ssl/certs/ca-certificates.crt"' >>$script
echo 'export SSL_CERT_FILE="${SDKPATHNATIVE}${sysconfdir}/ssl/certs/ca-certificates.crt"' >>$script
echo 'export REQUESTS_CA_BUNDLE="${SDKPATHNATIVE}${sysconfdir}/ssl/certs/ca-certificates.crt"' >>$script
echo 'export CURL_CA_BUNDLE="${SDKPATHNATIVE}${sysconfdir}/ssl/certs/ca-certificates.crt"' >>$script
fi
toolchain_create_sdk_version ${SDK_OUTPUT}/${SDKPATH}/version-${SDK_SYS}

View File

@@ -18,6 +18,9 @@ NVDCVE_URL ?= "https://nvd.nist.gov/feeds/json/cve/1.1/nvdcve-1.1-"
# Use a negative value to skip the update
CVE_DB_UPDATE_INTERVAL ?= "86400"
# Timeout for blocking socket operations, such as the connection attempt.
CVE_SOCKET_TIMEOUT ?= "60"
python () {
if not bb.data.inherits_class("cve-check", d):
raise bb.parse.SkipRecipe("Skip recipe when cve-check class is not loaded.")
@@ -39,6 +42,8 @@ python do_fetch() {
db_file = d.getVar("CVE_CHECK_DB_FILE")
db_dir = os.path.dirname(db_file)
cve_socket_timeout = int(d.getVar("CVE_SOCKET_TIMEOUT"))
if os.path.exists("{0}-journal".format(db_file)):
# If a journal is present the last update might have been interrupted. In that case,
# just wipe any leftovers and force the DB to be recreated.
@@ -79,7 +84,7 @@ python do_fetch() {
# Retrieve meta last modified date
try:
response = urllib.request.urlopen(meta_url)
response = urllib.request.urlopen(meta_url, timeout=cve_socket_timeout)
except urllib.error.URLError as e:
cve_f.write('Warning: CVE db update error, Unable to fetch CVE data.\n\n')
bb.warn("Failed to fetch CVE data (%s)" % e.reason)
@@ -107,7 +112,7 @@ python do_fetch() {
# Update db with current year json file
try:
response = urllib.request.urlopen(json_url)
response = urllib.request.urlopen(json_url, timeout=cve_socket_timeout)
if response:
update_db(conn, gzip.decompress(response.read()).decode('utf-8'))
conn.execute("insert or replace into META values (?, ?)", [year, last_modified]).close()

View File

@@ -58,7 +58,7 @@ python __anonymous() {
d.setVarFlag("ALTERNATIVE_TARGET_%s" % ep, 'psplash', '${bindir}/%s' % p)
d.appendVar("RDEPENDS:%s" % ep, " %s" % pn)
if p == "psplash-default":
d.appendVar("RRECOMMENDS:%s" % pn, " %s" % ep)
d.appendVar("RDEPENDS:%s" % pn, " %s" % ep)
}
S = "${WORKDIR}/git"

View File

@@ -518,6 +518,8 @@ FILES:${PN}-extra-utils = "\
${bindir}/systemd-path \
${bindir}/systemd-run \
${bindir}/systemd-cat \
${bindir}/systemd-creds \
${bindir}/systemd-cryptenroll \
${bindir}/systemd-delta \
${bindir}/systemd-cgls \
${bindir}/systemd-cgtop \

View File

@@ -1,54 +0,0 @@
From ec3df00224d4b396e2ac6586ab5d25f673caa4c2 Mon Sep 17 00:00:00 2001
From: Mark Adler <madler@alumni.caltech.edu>
Date: Wed, 30 Mar 2022 11:14:53 -0700
Subject: [PATCH] Correct incorrect inputs provided to the CRC functions.
The previous releases of zlib were not sensitive to incorrect CRC
inputs with bits set above the low 32. This commit restores that
behavior, so that applications with such bugs will continue to
operate as before.
Upstream-Status: Backport [https://github.com/madler/zlib/commit/ec3df00224d4b396e2ac6586ab5d25f673caa4c2]
Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com>
---
crc32.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/crc32.c b/crc32.c
index a1bdce5..451887b 100644
--- a/crc32.c
+++ b/crc32.c
@@ -630,7 +630,7 @@ unsigned long ZEXPORT crc32_z(crc, buf, len)
#endif /* DYNAMIC_CRC_TABLE */
/* Pre-condition the CRC */
- crc ^= 0xffffffff;
+ crc = (~crc) & 0xffffffff;
/* Compute the CRC up to a word boundary. */
while (len && ((z_size_t)buf & 7) != 0) {
@@ -749,7 +749,7 @@ unsigned long ZEXPORT crc32_z(crc, buf, len)
#endif /* DYNAMIC_CRC_TABLE */
/* Pre-condition the CRC */
- crc ^= 0xffffffff;
+ crc = (~crc) & 0xffffffff;
#ifdef W
@@ -1077,7 +1077,7 @@ uLong ZEXPORT crc32_combine64(crc1, crc2, len2)
#ifdef DYNAMIC_CRC_TABLE
once(&made, make_crc_table);
#endif /* DYNAMIC_CRC_TABLE */
- return multmodp(x2nmodp(len2, 3), crc1) ^ crc2;
+ return multmodp(x2nmodp(len2, 3), crc1) ^ (crc2 & 0xffffffff);
}
/* ========================================================================= */
@@ -1112,5 +1112,5 @@ uLong crc32_combine_op(crc1, crc2, op)
uLong crc2;
uLong op;
{
- return multmodp(op, crc1) ^ crc2;
+ return multmodp(op, crc1) ^ (crc2 & 0xffffffff);
}

View File

@@ -1,38 +0,0 @@
From eff308af425b67093bab25f80f1ae950166bece1 Mon Sep 17 00:00:00 2001
From: Mark Adler <fork@madler.net>
Date: Sat, 30 Jul 2022 15:51:11 -0700
Subject: [PATCH] Fix a bug when getting a gzip header extra field with inflate().
If the extra field was larger than the space the user provided with
inflateGetHeader(), and if multiple calls of inflate() delivered
the extra header data, then there could be a buffer overflow of the
provided space. This commit assures that provided space is not
exceeded.
CVE: CVE-2022-37434
Upstream-Status: Backport [https://github.com/madler/zlib/commit/eff308af425b67093bab25f80f1ae950166be]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
inflate.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/inflate.c b/inflate.c
index 7be8c63..7a72897 100644
--- a/inflate.c
+++ b/inflate.c
@@ -763,9 +763,10 @@ int flush;
copy = state->length;
if (copy > have) copy = have;
if (copy) {
+ len = state->head->extra_len - state->length;
if (state->head != Z_NULL &&
- state->head->extra != Z_NULL) {
- len = state->head->extra_len - state->length;
+ state->head->extra != Z_NULL &&
+ len < state->head->extra_max) {
zmemcpy(state->head->extra + len, next,
len + copy > state->head->extra_max ?
state->head->extra_max - len : copy);
--
2.37.2

View File

@@ -1,36 +0,0 @@
From 1eb7682f845ac9e9bf9ae35bbfb3bad5dacbd91d Mon Sep 17 00:00:00 2001
From: Mark Adler <fork@madler.net>
Date: Mon, 8 Aug 2022 10:50:09 -0700
Subject: [PATCH] Fix extra field processing bug that dereferences NULL
state->head.
The recent commit to fix a gzip header extra field processing bug
introduced the new bug fixed here.
CVE: CVE-2022-37434
Upstream-Status: Backport [https://github.com/madler/zlib/commit/1eb7682f845ac9e9bf9ae35bbfb3bad5dacbd91d]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
inflate.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/inflate.c b/inflate.c
index 7a72897..2a3c4fe 100644
--- a/inflate.c
+++ b/inflate.c
@@ -763,10 +763,10 @@ int flush;
copy = state->length;
if (copy > have) copy = have;
if (copy) {
- len = state->head->extra_len - state->length;
if (state->head != Z_NULL &&
state->head->extra != Z_NULL &&
- len < state->head->extra_max) {
+ (len = state->head->extra_len - state->length) <
+ state->head->extra_max) {
zmemcpy(state->head->extra + len, next,
len + copy > state->head->extra_max ?
state->head->extra_max - len : copy);
--
2.37.2

View File

@@ -1,27 +0,0 @@
Upstream-Status: Backport
Signed-off-by: Ross Burton <ross.burton@arm.com>
From 05796d3d8d5546cf1b4dfe2cd72ab746afae505d Mon Sep 17 00:00:00 2001
From: Mark Adler <madler@alumni.caltech.edu>
Date: Mon, 28 Mar 2022 18:34:10 -0700
Subject: [PATCH] Fix configure issue that discarded provided CC definition.
---
configure | 3 +++
1 file changed, 3 insertions(+)
diff --git a/configure b/configure
index 52ff4a04e..3fa3e8618 100755
--- a/configure
+++ b/configure
@@ -174,7 +174,10 @@ if test -z "$CC"; then
else
cc=${CROSS_PREFIX}cc
fi
+else
+ cc=${CC}
fi
+
cflags=${CFLAGS-"-O3"}
# to force the asm version use: CFLAGS="-O3 -DASMV" ./configure
case "$cc" in

View File

@@ -1,45 +0,0 @@
Obey LDFLAGS for tests
Upstream-Status: Submitted [https://github.com/madler/zlib/pull/409]
Signed-off-by: Ross Burton <ross.burton@intel.com>
--- zlib-1.2.8.orig/Makefile.in
+++ zlib-1.2.8/Makefile.in
@@ -26,7 +26,7 @@ CFLAGS=-O
SFLAGS=-O
LDFLAGS=
-TEST_LDFLAGS=-L. libz.a
+TEST_LDFLAGS=-L. $(LDFLAGS)
LDSHARED=$(CC)
CPP=$(CC) -E
@@ -176,22 +176,22 @@ placebo $(SHAREDLIBV): $(PIC_OBJS) libz.
-@rmdir objs
example$(EXE): example.o $(STATICLIB)
- $(CC) $(CFLAGS) -o $@ example.o $(TEST_LDFLAGS)
+ $(CC) $(CFLAGS) -o $@ example.o $(TEST_LDFLAGS) $(STATICLIB)
minigzip$(EXE): minigzip.o $(STATICLIB)
- $(CC) $(CFLAGS) -o $@ minigzip.o $(TEST_LDFLAGS)
+ $(CC) $(CFLAGS) -o $@ minigzip.o $(TEST_LDFLAGS) $(STATICLIB)
examplesh$(EXE): example.o $(SHAREDLIBV)
- $(CC) $(CFLAGS) -o $@ example.o -L. $(SHAREDLIBV)
+ $(CC) $(CFLAGS) -o $@ example.o $(TEST_LDFLAGS) $(SHAREDLIBV)
minigzipsh$(EXE): minigzip.o $(SHAREDLIBV)
- $(CC) $(CFLAGS) -o $@ minigzip.o -L. $(SHAREDLIBV)
+ $(CC) $(CFLAGS) -o $@ minigzip.o $(TEST_LDFLAGS) $(SHAREDLIBV)
example64$(EXE): example64.o $(STATICLIB)
- $(CC) $(CFLAGS) -o $@ example64.o $(TEST_LDFLAGS)
+ $(CC) $(CFLAGS) -o $@ example64.o $(TEST_LDFLAGS) $(STATICLIB)
minigzip64$(EXE): minigzip64.o $(STATICLIB)
- $(CC) $(CFLAGS) -o $@ minigzip64.o $(TEST_LDFLAGS)
+ $(CC) $(CFLAGS) -o $@ minigzip64.o $(TEST_LDFLAGS) $(STATICLIB)
install-libs: $(LIBS)
-@if [ ! -d $(DESTDIR)$(exec_prefix) ]; then mkdir -p $(DESTDIR)$(exec_prefix); fi

View File

@@ -6,18 +6,18 @@ SECTION = "libs"
LICENSE = "Zlib"
LIC_FILES_CHKSUM = "file://zlib.h;beginline=6;endline=23;md5=5377232268e952e9ef63bc555f7aa6c0"
SRC_URI = "https://zlib.net/${BP}.tar.xz \
file://cc.patch \
file://ldflags-tests.patch \
# The source tarball needs to be .gz as only the .gz ends up in fossils/
SRC_URI = "https://zlib.net/${BP}.tar.gz \
file://0001-configure-Pass-LDFLAGS-to-link-tests.patch \
file://run-ptest \
file://0001-Correct-incorrect-inputs-provided-to-the-CRC-functio.patch \
file://0001-Fix-a-bug-when-getting-a-gzip-header-extra-field-wit.patch \
file://0001-Fix-extra-field-processing-bug-that-dereferences-NUL.patch \
"
UPSTREAM_CHECK_URI = "http://zlib.net/"
SRC_URI[sha256sum] = "7db46b8d7726232a621befaab4a1c870f00a90805511c0e0090441dac57def18"
SRC_URI[sha256sum] = "b3a24de97a8fdbc835b9833169501030b8977031bcb54b3b3ac13740f846ab30"
# When a new release is made the previous release is moved to fossils/, so add this
# to PREMIRRORS so it is also searched automatically.
PREMIRRORS:append = " https://zlib.net/ https://zlib.net/fossils/"
CFLAGS += "-D_REENTRANT"
@@ -25,9 +25,12 @@ RDEPENDS:${PN}-ptest += "make"
inherit ptest
B = "${WORKDIR}/build"
do_configure() {
LDCONFIG=true ./configure --prefix=${prefix} --shared --libdir=${libdir} --uname=GNU
LDCONFIG=true ${S}/configure --prefix=${prefix} --shared --libdir=${libdir} --uname=GNU
}
do_configure[cleandirs] += "${B}"
do_compile() {
oe_runmake shared

View File

@@ -32,6 +32,7 @@ CMAKE_EXTRACONF = "\
-DCMAKE_USE_SYSTEM_LIBRARY_EXPAT=0 \
-DENABLE_ACL=0 -DHAVE_ACL_LIBACL_H=0 \
-DHAVE_SYS_ACL_H=0 \
-DCURL_LIBRARIES=-lcurl \
"
do_configure () {

View File

@@ -1,4 +1,4 @@
From e1dbdcd0ea667bab4b551294354e04c6fe288ab6 Mon Sep 17 00:00:00 2001
From 99f1e61b2957226254a116fde7fd73bf07034012 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 8 Mar 2021 16:04:20 -0800
Subject: [PATCH] gcc: poison-system-directories
@@ -20,12 +20,12 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
gcc/configure | 19 +++++++++++++++++++
gcc/configure.ac | 16 ++++++++++++++++
gcc/doc/invoke.texi | 9 +++++++++
gcc/gcc.cc | 9 +++++++--
gcc/gcc.cc | 15 ++++++++++++---
gcc/incpath.cc | 21 +++++++++++++++++++++
7 files changed, 86 insertions(+), 2 deletions(-)
7 files changed, 91 insertions(+), 3 deletions(-)
diff --git a/gcc/common.opt b/gcc/common.opt
index 8a0dafc522d..0357868e22c 100644
index 8a0dafc52..0357868e2 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -710,6 +710,10 @@ Wreturn-local-addr
@@ -40,7 +40,7 @@ index 8a0dafc522d..0357868e22c 100644
Common Var(warn_shadow) Warning
Warn when one variable shadows another. Same as -Wshadow=global.
diff --git a/gcc/config.in b/gcc/config.in
index 64c27c9cfac..a693cb8a886 100644
index 64c27c9cf..a693cb8a8 100644
--- a/gcc/config.in
+++ b/gcc/config.in
@@ -230,6 +230,16 @@
@@ -61,7 +61,7 @@ index 64c27c9cfac..a693cb8a886 100644
optimizer and back end) to be checked for dynamic type safety at runtime.
This is quite expensive. */
diff --git a/gcc/configure b/gcc/configure
index 5ce0557719a..dc2d59701ad 100755
index 2b83acfb0..8bb97578c 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -1023,6 +1023,7 @@ enable_maintainer_mode
@@ -81,7 +81,7 @@ index 5ce0557719a..dc2d59701ad 100755
--enable-plugin enable plugin support
--enable-host-shared build host code as shared libraries
--disable-libquadmath-support
@@ -31982,6 +31985,22 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
@@ -31996,6 +31999,22 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
fi
@@ -105,10 +105,10 @@ index 5ce0557719a..dc2d59701ad 100755
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 23bee7010a3..36ce78924de 100644
index daf2a708c..6155b83a7 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -7421,6 +7421,22 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
@@ -7435,6 +7435,22 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
[specify that runtime libraries should be
installed in a compiler-specific directory])])
@@ -132,7 +132,7 @@ index 23bee7010a3..36ce78924de 100644
AC_SUBST(subdirs)
AC_SUBST(srcdir)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 07b440190c3..b2de464798a 100644
index ff6c338be..a8ebfa59a 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -379,6 +379,7 @@ Objective-C and Objective-C++ Dialects}.
@@ -159,10 +159,10 @@ index 07b440190c3..b2de464798a 100644
@opindex Wfloat-equal
@opindex Wno-float-equal
diff --git a/gcc/gcc.cc b/gcc/gcc.cc
index bb07cc244e3..ce161d3c853 100644
index beefde7f6..4e6557b3c 100644
--- a/gcc/gcc.cc
+++ b/gcc/gcc.cc
@@ -1159,6 +1159,8 @@ proper position among the other output files. */
@@ -1162,6 +1162,8 @@ proper position among the other output files. */
"%{fuse-ld=*:-fuse-ld=%*} " LINK_COMPRESS_DEBUG_SPEC \
"%X %{o*} %{e*} %{N} %{n} %{r}\
%{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!r:%{!nostartfiles:%S}}} \
@@ -171,7 +171,7 @@ index bb07cc244e3..ce161d3c853 100644
%{static|no-pie|static-pie:} %@{L*} %(mfwrap) %(link_libgcc) " \
VTABLE_VERIFICATION_SPEC " " SANITIZER_EARLY_SPEC " %o "" \
%{fopenacc|fopenmp|%:gt(%{ftree-parallelize-loops=*:%*} 1):\
@@ -1254,8 +1256,11 @@ static const char *cpp_unique_options =
@@ -1257,8 +1259,11 @@ static const char *cpp_unique_options =
static const char *cpp_options =
"%(cpp_unique_options) %1 %{m*} %{std*&ansi&trigraphs} %{W*&pedantic*} %{w}\
%{f*} %{g*:%{%:debug-level-gt(0):%{g*}\
@@ -179,27 +179,27 @@ index bb07cc244e3..ce161d3c853 100644
- %{undef} %{save-temps*:-fpch-preprocess}";
+ %{!fno-working-directory:-fworking-directory}}} %{O*}"
+#ifdef POISON_BY_DEFAULT
+ " -Werror=poison-system-directories"
+ " %{!Wno-error=poison-system-directories:-Werror=poison-system-directories}"
+#endif
+ " %{undef} %{save-temps*:-fpch-preprocess}";
/* Pass -d* flags, possibly modifying -dumpdir, -dumpbase et al.
@@ -1265,7 +1270,11 @@ static const char *cc1_options =
@@ -1287,7 +1292,11 @@ static const char *cc1_options =
%{coverage:-fprofile-arcs -ftest-coverage}\
%{fprofile-arcs|fprofile-generate*|coverage:\
%{!fprofile-update=single:\
- %{pthread:-fprofile-update=prefer-atomic}}}";
+ %{pthread:-fprofile-update=prefer-atomic}}}"
+#ifdef POISON_BY_DEFAULT
+ " -Werror=poison-system-directories"
+ " %{!Wno-error=poison-system-directories:-Werror=poison-system-directories}"
+#endif
+ ;
static const char *asm_options =
"%{-target-help:%:print-asm-header()} "
diff --git a/gcc/incpath.cc b/gcc/incpath.cc
index bd2a97938eb..c80f100f476 100644
index 622204a38..5ac03c086 100644
--- a/gcc/incpath.cc
+++ b/gcc/incpath.cc
@@ -26,6 +26,7 @@

View File

@@ -5,7 +5,7 @@ if [ -z "$OECORE_NATIVE_SYSROOT" ]; then
fi
if [ -z "$SSL_CERT_DIR" ]; then
export SSL_CERT_DIR="${OECORE_NATIVE_SYSROOT}/etc/ssl/certs/"
export SSL_CERT_DIR="$OECORE_NATIVE_SYSROOT/etc/ssl/certs/"
fi
# If these are set to a cross-compile path, meson will get confused and try to
@@ -13,7 +13,20 @@ fi
# config is already in meson.cross.
unset CC CXX CPP LD AR NM STRIP
for arg in "$@"; do
case "$arg" in
-*) continue ;;
*) SUBCMD="$arg"; break ;;
esac
done
if [ "$SUBCMD" = "setup" ] || [ -d "$SUBCMD" ]; then
MESON_SUB_OPTS=" \
--cross-file="$OECORE_NATIVE_SYSROOT/usr/share/meson/${TARGET_PREFIX}meson.cross" \
--native-file="$OECORE_NATIVE_SYSROOT/usr/share/meson/meson.native" \
"
fi
exec "$OECORE_NATIVE_SYSROOT/usr/bin/meson.real" \
--cross-file "${OECORE_NATIVE_SYSROOT}/usr/share/meson/${TARGET_PREFIX}meson.cross" \
--native-file "${OECORE_NATIVE_SYSROOT}/usr/share/meson/meson.native" \
"$@"
"$@" \
$MESON_SUB_OPTS

View File

@@ -18,7 +18,7 @@ SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/meson-${PV}.tar.gz \
file://0001-is_debianlike-always-return-False.patch \
file://0001-Check-for-clang-before-guessing-gcc-or-lcc.patch \
"
SRC_URI[sha256sum] = "16222f17ef76be0542c91c07994f9676ae879f46fc21c0c786a21ef2cb518bbf"
SRC_URI[sha256sum] = "519c0932e1a8b208741f0fdce90aa5c0b528dd297cf337009bf63539846ac056"
inherit python_setuptools_build_meta github-releases

View File

@@ -1,4 +1,4 @@
From 3a05dc2c0acff1713dd44cef5e9f328f0706eb3e Mon Sep 17 00:00:00 2001
From c496cad7b7a84e599f521f289648373df9fad80f Mon Sep 17 00:00:00 2001
From: Ed Bartosh <ed.bartosh@linux.intel.com>
Date: Tue, 13 Jun 2017 14:55:52 +0300
Subject: [PATCH] Disabled reading host configs.
@@ -12,10 +12,10 @@ Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
1 file changed, 8 deletions(-)
diff --git a/config.c b/config.c
index 630f99d..07dbf53 100644
index 8c5fa83..346048b 100644
--- a/config.c
+++ b/config.c
@@ -834,14 +834,6 @@ void read_config(void)
@@ -843,14 +843,6 @@ void read_config(void)
memcpy(devices, const_devices,
nr_const_devices*sizeof(struct device));

Some files were not shown because too many files have changed in this diff Show More