<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/lib/oe, branch master-next</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=master-next</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=master-next'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2025-11-07T13:15:35+00:00</updated>
<entry>
<title>package_manager/oe-pkgdata-util: fix complementary package installation</title>
<updated>2025-11-07T13:15:35+00:00</updated>
<author>
<name>Chen Qi</name>
<email>Qi.Chen@windriver.com</email>
</author>
<published>2025-09-24T08:42:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=e0ec4ad7251c7d8e29c977ddab8eadcd20b8537d'/>
<id>urn:sha1:e0ec4ad7251c7d8e29c977ddab8eadcd20b8537d</id>
<content type='text'>
We currently have a problem regarding complementary package installation,
that is, if 'oe-pkgdata-util glob' maps out packages that are not in
the oe-rootfs-repo, we will get error like below:

  No match for argument: lib32-glibc-locale-en-gb
  Error: Unable to find a match: lib32-glibc-locale-en-gb

Here are the steps to reproduce the issue:
1. Add the following lines to local.conf:
   require conf/multilib.conf
   MULTILIBS ?= "multilib:lib32"
   DEFAULTTUNE:virtclass-multilib-lib32 ?= "core2-32"
   IMAGE_INSTALL:append = " lib32-sysstat"
2. bitbake lib32-glibc-locale &amp;&amp; bitbake core-image-full-cmdline

This problem appears because:
1) At do_rootfs time, we first contruct a repo with a filtering
   mechanism to ensure we don't pull in unneeded packages.[1]
2) oe-pkgdata-util uses the pkgdata without filtering.

In order to avoid any hardcoding that might grow in the future[2], we need
to give 'oe-pkgdata-util glob' some filtering ability.

So this patch does the following things:
1) Add a new option, '-a/--allpkgs', to 'oe-pkgdata-util glob'.
   This gives it a filtering mechanism. As it's an option, people who use
   'oe-pkgdata-util glob' command could use it as before.
2) Add to package_manager 'list_all' function implementations which
   list all available functions in our filtered repo.

[1] https://git.openembedded.org/openembedded-core/commit/?id=85e72e129362db896b0d368077033e4a2e373cf9
[2] https://lists.openembedded.org/g/openembedded-core/message/221449

(From OE-Core rev: 72824e1b763838252b8533ec679535f5b77e1cc8)

Signed-off-by: Chen Qi &lt;Qi.Chen@windriver.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>spdx_common: Fix invalid SPDX downloadLocation for Rust crates</title>
<updated>2025-10-27T11:37:43+00:00</updated>
<author>
<name>Jayasurya Maganuru</name>
<email>Maganuru.Jayasurya@Windriver.com</email>
</author>
<published>2025-10-20T07:22:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=3d67ec276262d8f694be6bc9b492c504d12ae399'/>
<id>urn:sha1:3d67ec276262d8f694be6bc9b492c504d12ae399</id>
<content type='text'>
Fixes [YOCTO #15909]

SPDX validation was failing due to the use of `crate://crates.io/...` as the
`downloadLocation`, which is not a valid SPDX URL as per the 2.2 specification.

This patch updates `fetch_data_to_uri()` in `spdx_common.py` to detect when the
fetcher type is "crate" and instead use the `url` attribute, which contains a
valid HTTP(S) URL in the expected format, e.g.:

  https://crates.io/api/v1/crates/&lt;name&gt;/&lt;version&gt;/download

This aligns the SPDX metadata for Rust crates with the specification and avoids
validation errors in tools consuming SPDX documents.

Tested with the `python3-bcrypt` recipe and verified that the
generated `spdx.json` contains a valid `software_downloadLocation`.

Reference: https://bugzilla.yoctoproject.org/show_bug.cgi?id=15909

(From OE-Core rev: 7cadbd1a22e18847d03b5baa902f5581d3e0aafa)

Signed-off-by: Jayasurya Maganuru &lt;Maganuru.Jayasurya@Windriver.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Ross Burton &lt;ross.burton@arm.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>recipeutils/get_recipe_upstream_version: pass ud.name instead of 'default'</title>
<updated>2025-10-09T09:58:07+00:00</updated>
<author>
<name>Uwe Kleine-König</name>
<email>u.kleine-koenig@baylibre.com</email>
</author>
<published>2025-10-06T11:33:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=3ad95487752aed4cf91e7a5af678b6cca16ac1cc'/>
<id>urn:sha1:3ad95487752aed4cf91e7a5af678b6cca16ac1cc</id>
<content type='text'>
While all but the osc fetcher ignore the third parameter of their
latest_revision implementation, 'default' isn't a valid name in general.

Since commit 2515fbd10824 ("fetch: Drop multiple branch/revision support
for single git urls") in bitbake a fetcher only handles a single
branch/revision and the only sensible thing to pass is `ud.name`.

(From OE-Core rev: cb36e8a62d7d31b75b3ddc6b84c1bdee09ebbc60)

Signed-off-by: Uwe Kleine-König &lt;u.kleine-koenig@baylibre.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>package.py: replace all files unconditionally when copy debug sources</title>
<updated>2025-10-02T10:28:03+00:00</updated>
<author>
<name>Changqing Li</name>
<email>changqing.li@windriver.com</email>
</author>
<published>2025-09-30T08:00:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=21349d54a179ac2b2ac216cc299ca9e35f0c1aab'/>
<id>urn:sha1:21349d54a179ac2b2ac216cc299ca9e35f0c1aab</id>
<content type='text'>
This is for fixing reproducible issue for package like:
intel-speed-select-src. For intel-speed-select, one of the debug sources
is /usr/src/debug/intel-speed-select/1.0/include/linux/thermal.h,
file include/linux/thermal.h under ${S} (kernel-sources)
link file include/linux/thermal.h under ${B}, which link to ${S}/include/uapi/linux/thermal.h

During copy debug sources, sources under ${S} copied first, then sources
under ${B} is copied. mtime of ${S}/include/linux/thermal.h and
${S}/include/uapi/linux/thermal.h are decided by when it is fetched, so
it is not determinate, maybe same or different.

For cpio, if the in file is older than or the same as the exist file,
cpio will not replace the exist file with warning "cpio: xxx not created:
newer or same age version exists".  And this will cause
intel-speed-select-src maybe not reproducible.

And option '-u' for cpio, first, this will make the copied file
determistic. Second, source files under ${B} should have higher priority
then ${S}, it may be generated during build, the target is more likely
to use this file.

(From OE-Core rev: 8898f97b4acc9d5c2c6583c91d05327f9093133e)

Signed-off-by: Changqing Li &lt;changqing.li@windriver.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>meta/lib/oe/recipeutils.py: Handle multi-repo recipes for upgrade check</title>
<updated>2025-09-25T10:09:49+00:00</updated>
<author>
<name>Uwe Kleine-König</name>
<email>u.kleine-koenig@baylibre.com</email>
</author>
<published>2025-09-23T15:47:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=441313eecbd45cfcbf0368e4d1d54bd2e9e59c6b'/>
<id>urn:sha1:441313eecbd45cfcbf0368e4d1d54bd2e9e59c6b</id>
<content type='text'>
For a recipe that uses more than one git repo there isn't a single
SRCREV variable. For example for linux-yocto there is SRCREV_machine and
SRCREV_meta and rd.getVar("SRCREV") yields "INVALID".

Luckily bb.fetch2 already handles all the details and exposes the
currently used revision in ud. So just use that.

(From OE-Core rev: ddf00d6aee955878c070327ee8d751fdb6099444)

Signed-off-by: Uwe Kleine-König &lt;u.kleine-koenig@baylibre.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>package_manager/ipk: give out useful reason about an unmatched package</title>
<updated>2025-09-15T16:57:24+00:00</updated>
<author>
<name>Chen Qi</name>
<email>Qi.Chen@windriver.com</email>
</author>
<published>2025-09-12T03:33:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=8b48566f53760decc18490cd775c2193e65dbdcc'/>
<id>urn:sha1:8b48566f53760decc18490cd775c2193e65dbdcc</id>
<content type='text'>
Give out useful information when a package could not be matched.

Before the change:

  error: opkg_solver_install: No candidates to install catch2 (null)!

With this patch:

  error: opkg_solver_install: No candidates to install catch2 (null)!
  ...
  catch2 is a recipe. Its generated packages are: ['catch2-src', 'catch2-dbg', 'catch2-staticdev', 'catch2-dev', 'catch2-doc']
  Either specify a generated package or set ALLOW_EMPTY:${PN} = "1" in catch2 recipe

(From OE-Core rev: 4bcb97ab4d7622d04dbf71930ea1784c8d57c136)

Signed-off-by: Chen Qi &lt;Qi.Chen@windriver.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>package_manager/deb: give out useful reason about an unmatched package</title>
<updated>2025-09-15T16:57:24+00:00</updated>
<author>
<name>Chen Qi</name>
<email>Qi.Chen@windriver.com</email>
</author>
<published>2025-09-12T03:33:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=83a7f0353554ab302920826c10a8b34b0ca4b595'/>
<id>urn:sha1:83a7f0353554ab302920826c10a8b34b0ca4b595</id>
<content type='text'>
Give out useful information when a package could not be matched.

Before the change:

  E: Package 'catch2' has no installation candidate

With this patch:

  E: Package 'catch2' has no installation candidate
  catch2 is a recipe. Its generated packages are: ['catch2-src', 'catch2-dbg', 'catch2-staticdev', 'catch2-dev', 'catch2-doc']
  Either specify a generated package or set ALLOW_EMPTY:${PN} = "1" in catch2 recipe

(From OE-Core rev: ca6c1dd0148c4776bd556fccfd71153fc72d2e3d)

Signed-off-by: Chen Qi &lt;Qi.Chen@windriver.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>package_manager/rpm: give out useful reason about unmatched packages</title>
<updated>2025-09-15T16:57:23+00:00</updated>
<author>
<name>Chen Qi</name>
<email>Qi.Chen@windriver.com</email>
</author>
<published>2025-09-12T03:33:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=0ffa8173194403e934220ced5bfdd328d508f575'/>
<id>urn:sha1:0ffa8173194403e934220ced5bfdd328d508f575</id>
<content type='text'>
Unmatched package error is a common error at rootfs. We want to give
out more useful information to user.

Before this change, if some user specifiy IMAGE_INSTALL += "catch2",
the error message will be like:

  No match for argument: catch2
  Error: Unable to find a match: catch2

With this patch, the error message will be like:

  No match for argument: catch2
  Error: Unable to find a match: catch2
  catch2 is a recipe. Its generated packages are: ['catch2-src', 'catch2-dbg', 'catch2-staticdev', 'catch2-dev', 'catch2-doc']
  Either specify a generated package or set ALLOW_EMPTY:${PN} = "1" in catch2 recipe

(From OE-Core rev: 00f871cd07d7f44788124510a75b7160fdc60bb5)

Signed-off-by: Chen Qi &lt;Qi.Chen@windriver.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>package_manager/__init__.py: add function to give user reason about a missing package</title>
<updated>2025-09-15T16:57:23+00:00</updated>
<author>
<name>Chen Qi</name>
<email>Qi.Chen@windriver.com</email>
</author>
<published>2025-09-12T03:33:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=16e7ffa2e23cd7eccc65784ca1c49056b98a269b'/>
<id>urn:sha1:16e7ffa2e23cd7eccc65784ca1c49056b98a269b</id>
<content type='text'>
When users specify some package in IMAGE_INSTALL, but get some error
at rootfs time, the user might be confusing. This usually happens
when the user puts a recipe name in IMAGE_INSTALL.

To helper user understand more about what's going on, add a common
function here which makes use of pkgdata data to give the possible
reason about a missing package. This function is expected to be used
by package backends such as rpm.

(From OE-Core rev: 4c1f63a7618c5eef1684ecc52af50821a49e2e91)

Signed-off-by: Chen Qi &lt;Qi.Chen@windriver.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>package_manager/__init__.py: remove obsolete codes related to packagefeed-stability</title>
<updated>2025-09-08T17:02:40+00:00</updated>
<author>
<name>Chen Qi</name>
<email>Qi.Chen@windriver.com</email>
</author>
<published>2025-09-08T02:21:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=66ed4bccd67f53412f4dc26a1037b99695e3fa3a'/>
<id>urn:sha1:66ed4bccd67f53412f4dc26a1037b99695e3fa3a</id>
<content type='text'>
The packagefeed-stability.bbclass has been removed. The codes related
to it are also obsolete. Remove them.

(From OE-Core rev: e3bf1c4a40e64acadbf3f905d898d81db762d8f4)

Signed-off-by: Chen Qi &lt;Qi.Chen@windriver.com&gt;
Signed-off-by: Mathieu Dubois-Briand &lt;mathieu.dubois-briand@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
</feed>
