<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/conf/multilib.conf, branch styhead-5.1.4</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=styhead-5.1.4</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=styhead-5.1.4'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2024-11-26T13:37:09+00:00</updated>
<entry>
<title>gcc-source: Fix racing on building gcc-source-14.2.0 and lib32-gcc-source-14.2.0</title>
<updated>2024-11-26T13:37:09+00:00</updated>
<author>
<name>Hongxu Jia</name>
<email>hongxu.jia@windriver.com</email>
</author>
<published>2024-10-12T07:18:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=f808d877a97dfd39c91de2f825ca61550ed8a0c9'/>
<id>urn:sha1:f808d877a97dfd39c91de2f825ca61550ed8a0c9</id>
<content type='text'>
While enabling multilib, build gcc-source-14.2.0 and lib32-gcc-source-14.2.0
at the same time:

    $ MACHINE = "qemux86-64"
    $ require conf/multilib.conf
    $ MULTILIBS = "multilib:lib32"
    $ DEFAULTTUNE:virtclass-multilib-lib32 = "x86"
    $ bitbake gcc-source-14.2.0 lib32-gcc-source-14.2.0
    ...
    $ cat tmp-glibc/work-shared/gcc-14.2.0-r0.vr2401/temp/log.task_order
    20241012-064533.415426 do_recipe_qa (2688052): log.do_recipe_qa.2688052
    20241012-064533.463783 do_recipe_qa (2688051): log.do_recipe_qa.2688051
    20241012-064533.805164 do_fetch (2688257): log.do_fetch.2688257
    20241012-064533.852955 do_fetch (2688256): log.do_fetch.2688256
    20241012-064617.823714 do_unpack (2698542): log.do_unpack.2698542
    20241012-064617.871730 do_unpack (2698541): log.do_unpack.2698541
    ...

There are two tasks for do_fetch, do_unpack and others, so there are race issues.

Both of them have the same hardcode 'gcc' prefix in ${WORKDIR} and
${S}, explicitly disable lib32-gcc-source-14.2.0 for multilib

Set gcc-source as BPN of gcc-source-14.2.0

(From OE-Core rev: 9609a7c9c6d809cc02480c3f12f8dd7c6f3fe9fc)

Signed-off-by: Hongxu Jia &lt;hongxu.jia@windriver.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
(cherry picked from commit 901c47877e0710af50639f688e0bfdb851b762b5)
Signed-off-by: Steve Sakoman &lt;steve@sakoman.com&gt;
</content>
</entry>
<entry>
<title>multilib.conf: remove appending to PKG_CONFIG_PATH</title>
<updated>2024-07-13T22:28:31+00:00</updated>
<author>
<name>Changqing Li</name>
<email>changqing.li@windriver.com</email>
</author>
<published>2024-07-12T04:46:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=a3518ccb6be7d8e315c3840550381c60aeace5c6'/>
<id>urn:sha1:a3518ccb6be7d8e315c3840550381c60aeace5c6</id>
<content type='text'>
* Since commit [a23c482cab allarch: only enable allarch when multilib is
not used], allarch recipes will also be installed into
${MLPREFIX}recipe-sysroot, so this appending is not needed.

* This appending also causes some QA errors. Eg: for lib32-php, the
recipe will use 's@${RECIPE_SYSROOT}@@g' to remove host specific path,
this appending makes not all the host specific path are matched.

(From OE-Core rev: e6e6076f1956c711814c14d76194794d950e45f8)

Signed-off-by: Changqing Li &lt;changqing.li@windriver.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>multilib.conf: explicitly make MULTILIB_VARIANTS vardeps on MULTILIBS</title>
<updated>2023-08-10T08:18:53+00:00</updated>
<author>
<name>Chen Qi</name>
<email>Qi.Chen@windriver.com</email>
</author>
<published>2023-08-01T02:03:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=418f1609598d3645d7f8a79fb1599e5c5d9904dc'/>
<id>urn:sha1:418f1609598d3645d7f8a79fb1599e5c5d9904dc</id>
<content type='text'>
This patch is to ensure recipes get rebuilt correctly and avoid
incorrect sstate cache reuse when toggling multilib.

The following steps show one example of such incorrect sstate cache reuse.
1. enable multilib &amp;&amp; bitbake &lt;some_image&gt; -c populate_sdk
2. disable multilib &amp;&amp; bitbake &lt;some_image&gt; -c populate_sdk

The error message is as below:
Error:
 Problem: conflicting requests
   - nothing provides binutils-cross-canadian-i686 needed by packagegroup-cross-canadian-intel-x86-64-1.0-r0.x86_64_nativesdk
   - nothing provides gcc-cross-canadian-i686 needed by packagegroup-cross-canadian-intel-x86-64-1.0-r0.x86_64_nativesdk
   - nothing provides gdb-cross-canadian-i686 needed by packagegroup-cross-canadian-intel-x86-64-1.0-r0.x86_64_nativesdk
 (try to add '--skip-broken' to skip uninstallable packages)

We get this error because packagegroup-cross-canadian recipe is
not rebuilt when it should be.

Current codes have tracked the dependency to MULTILIB_VARIANTS, as
shown in the following chain:
RDEPENDS:packagegroup-cross-canadian-intel-x86-64 -&gt;
all_multilib_tune_values -&gt; MULTILIB_VARIANTS.

However, MULTILIB_VARIANTS cannot automatically depend on MULTILIBS.
See some results from 'bitbake-dumpsigs' below:
List of dependencies for variable MULTILIB_VARIANTS is ['extend_variants']
Variable MULTILIB_VARIANTS value is ${@extend_variants(d,'MULTILIBS','multilib')}

It's obvious that the value of MULTILIB_VARIANTS depend on the
value of MULTILIBS, so let's set this dependency manually.

(From OE-Core rev: 9f47d8eb51816d16078a23c0cef4d697555f913f)

Signed-off-by: Chen Qi &lt;Qi.Chen@windriver.com&gt;
Signed-off-by: Alexandre Belloni &lt;alexandre.belloni@bootlin.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>multilib: Avoid sysroot race issues when multilib enabled</title>
<updated>2021-10-08T15:43:59+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2021-10-07T14:26:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=6fdceeab2057612f61755a74097c35d2290945d6'/>
<id>urn:sha1:6fdceeab2057612f61755a74097c35d2290945d6</id>
<content type='text'>
Multilib changes RECIPE_SYSROOT which can make the value in PSEUDO_IGNORE_PATHS
incorrect. Add the correct value, which fixes races over files in the sysroot.

[YOCTO #14581]

(From OE-Core rev: 64003e5e1b51c0cd561681b1ac13293546b8182b)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Convert to new override syntax</title>
<updated>2021-08-02T14:44:10+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2021-07-28T22:28:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=bb6ddc3691ab04162ec5fd69a2d5e7876713fd15'/>
<id>urn:sha1:bb6ddc3691ab04162ec5fd69a2d5e7876713fd15</id>
<content type='text'>
This is the result of automated script conversion:

scripts/contrib/convert-overrides.py &lt;oe-core directory&gt;

converting the metadata to use ":" as the override character instead of "_".

(From OE-Core rev: 42344347be29f0997cc2f7636d9603b1fe1875ae)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>multilib.conf: add u-boot to NON_MULTILIB_RECIPES</title>
<updated>2020-08-18T10:44:55+00:00</updated>
<author>
<name>Ming Liu</name>
<email>liu.ming50@gmail.com</email>
</author>
<published>2020-08-17T09:32:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=fe80568a88718dadbd85507637b30f1c6b3667bb'/>
<id>urn:sha1:fe80568a88718dadbd85507637b30f1c6b3667bb</id>
<content type='text'>
u-boot should be a non multilib recipe, add it in NON_MULTILIB_RECIPES.

(From OE-Core rev: 5e7dc0d68efb2d43bbd5b1be9e6d555fc4456fb6)

Signed-off-by: Ming Liu &lt;liu.ming50@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>multilib.conf: Ensure that RECIPE_SYSROOT is unchanged for native</title>
<updated>2019-12-30T23:39:10+00:00</updated>
<author>
<name>Mike Crowe</name>
<email>mac@mcrowe.com</email>
</author>
<published>2019-12-17T08:02:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=c1ad30fd80740701f7c264381fc2e3e34460927f'/>
<id>urn:sha1:c1ad30fd80740701f7c264381fc2e3e34460927f</id>
<content type='text'>
Ensure that RECIPE_SYSROOT is the same for -native recipes whether
multilib.conf is included or not.

Without this change task signatures for -native recipes change when
switching between MACHINEs that require multilib.conf and those that
don't.

This fix was one of the ones suggested by Khem Raj in
http://lists.openembedded.org/pipermail/openembedded-core/2019-December/290303.html

Add test_sstate_multilib_or_not_native_samesigs test case to
sstatetests.py to ensure that this stays fixed.

(From OE-Core rev: aa05f1ded71366b86eda7fce24d8b5395e85ada2)

Signed-off-by: Mike Crowe &lt;mac@mcrowe.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>conf/multilib.conf: Add ovmf to NON_MULTILIB_RECIPES</title>
<updated>2019-09-16T22:02:44+00:00</updated>
<author>
<name>Robert Yang</name>
<email>liezhi.yang@windriver.com</email>
</author>
<published>2019-09-11T10:31:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=6606a86979f596877b60184a81d7bfc3f06c1751'/>
<id>urn:sha1:6606a86979f596877b60184a81d7bfc3f06c1751</id>
<content type='text'>
Fixed:
MACHINE = "qemux86-64"
require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE_virtclass-multilib-lib32 = "x86"

$ bitbake ovmf lib32-ovmf
[snip]
ERROR: ovmf-edk2-stable201905-r0 do_deploy_setscene: The recipe ovmf is trying to install files into a shared area when those files already exist.
 Those files and their manifest location are:
  /buildarea1/lyang1/rebase-work/test_cc/tmp-glibc/deploy/images/qemux86-64/OvmfPkKek1.key
    (matched in manifest-qemux86_64-lib32-ovmf.deploy)
[snip]

Add it NON_MULTILIB_RECIPES to fix the problem since it is a firmware, build
multilib for it doens't make much sense.

(From OE-Core rev: 5c685f55ccba9d47a79e8798903b30b90bdf03c6)

Signed-off-by: Robert Yang &lt;liezhi.yang@windriver.com&gt;
Signed-off-by: Ross Burton &lt;ross.burton@intel.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Revert "os-release: avoid multilib expand"</title>
<updated>2018-10-20T21:40:16+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2018-10-19T13:51:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=c1f186fe124b5c9a8c6d3c1c17944ad472239343'/>
<id>urn:sha1:c1f186fe124b5c9a8c6d3c1c17944ad472239343</id>
<content type='text'>
This reverts commit 591a11ba58ce3c2c147bb1f8202bc6a0092b70eb.

This is not needed after the recent os-release fix.

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>os-release: avoid multilib expand</title>
<updated>2018-10-04T13:21:41+00:00</updated>
<author>
<name>Kai Kang</name>
<email>kai.kang@windriver.com</email>
</author>
<published>2018-10-02T16:27:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=591a11ba58ce3c2c147bb1f8202bc6a0092b70eb'/>
<id>urn:sha1:591a11ba58ce3c2c147bb1f8202bc6a0092b70eb</id>
<content type='text'>
Add os-release to NON_MULTILIB_RECIPES in multilib.conf that do not do
multilib expand for os-release.

(From OE-Core rev: 361382ca16c276e1e404eab58c0956a2b6d23d7e)

Signed-off-by: Kai Kang &lt;kai.kang@windriver.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
</feed>
