<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/classes/nativesdk.bbclass, branch kirkstone-4.0.28</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=kirkstone-4.0.28</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=kirkstone-4.0.28'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2025-01-24T15:49:28+00:00</updated>
<entry>
<title>classes/nativesdk: also override TUNE_PKGARCH</title>
<updated>2025-01-24T15:49:28+00:00</updated>
<author>
<name>Ross Burton</name>
<email>ross.burton@arm.com</email>
</author>
<published>2025-01-10T18:03:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=83dfb365a81248aa3453bd62e24d870aae862f0b'/>
<id>urn:sha1:83dfb365a81248aa3453bd62e24d870aae862f0b</id>
<content type='text'>
The nativesdk class overrides PACKAGE_ARCH and unsets TUNE_FEATURES, but
as recipes might want to look at TUNE_PKGARCH too (for example, when
setting QEMU_EXTRAOPTIONS) we should also override that variable.

Otherwise, a nativesdk recipe will have the TUNE_PKGARCH of the target,
which leads to errors (eg passing mips arguments to an arm qemu).

(From OE-Core rev: 38b4992329459f2200817a848e8888b9284b4917)

Signed-off-by: Ross Burton &lt;ross.burton@arm.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
(cherry picked from commit 05322beb290e1db30bef49b4364f8a8e6e9f7408)
Signed-off-by: Steve Sakoman &lt;steve@sakoman.com&gt;
</content>
</entry>
<entry>
<title>nativesdk: Clear TUNE_FEATURES</title>
<updated>2022-08-23T14:22:52+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2022-07-27T10:19:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=36eb09d20ede32e416fe1bcb4530c0b2c53363bd'/>
<id>urn:sha1:36eb09d20ede32e416fe1bcb4530c0b2c53363bd</id>
<content type='text'>
Similarly to what native.bbclass does, clear TUNE_FEATURES since these
aren't appropriate to the nativesdk build. This saves us having to change
down signature issues due to data in this variable.

(From OE-Core rev: 394c1bb8c8148d65b6188586fd4b6d8edc39ab88)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
(cherry picked from commit 2e5079e434504a3a22b609f7ddbb7f4c533c4cdb)
Signed-off-by: Steve Sakoman &lt;steve@sakoman.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>nativesdk: Handle chown/chgrp calls in nativesdk do_install tasks</title>
<updated>2021-11-26T17:01:08+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2021-11-22T16:11:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=8dd0a45c858290288e1a1fef046b5cfcf7ff6257'/>
<id>urn:sha1:8dd0a45c858290288e1a1fef046b5cfcf7ff6257</id>
<content type='text'>
We disable the useradd code for nativesdk targets since we don't support
postinstalls or multiple users in those cases. This means any usage
of chown/chgrp inside do_install tasks won't work and would have to be
conditional. Rather than require all recipes to do that, add intercepts
of the calls and map those to root/root user/groups. We can't just ignore
them as some calls are used to remove host contamination from the host
user ID so they need to be made, just as root.

(From OE-Core rev: e1f40670c438e33cae87678425de72ca03566888)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>buildhistory: Fix package output files for SDKs</title>
<updated>2021-10-14T10:22:18+00:00</updated>
<author>
<name>Andres Beltran</name>
<email>abeltran@linux.microsoft.com</email>
</author>
<published>2021-10-05T00:34:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=f3518bcdab10ea3bd193bbb1b8a57ad9f751db63'/>
<id>urn:sha1:f3518bcdab10ea3bd193bbb1b8a57ad9f751db63</id>
<content type='text'>
Currently, installed packages are listed for images in image-info.txt, but
not for SDKs in sdk-info.txt. Add TOOLCHAIN_HOST_TASK and
TOOLCHAIN_TARGET_TASK to the output variables in sdk-info.txt.

Moreover, package output files for the SDK host are empty because
PKGDATA_DIR defaults to the target directory. Fix this bug and create a new
variable called PKGDATA_DIR_SDK which stores the correct path for the SDK
host package data.

(From OE-Core rev: 82e6172c1df378dff4e503aa878501c08937b5bb)

Signed-off-by: Andres Beltran &lt;abeltran@linux.microsoft.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>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>nativesdk: Set the CXXFLAGS to the BUILDSDK_CXXFLAGS</title>
<updated>2020-07-12T11:21:48+00:00</updated>
<author>
<name>Douglas</name>
<email>douglas.royds@taitradio.com</email>
</author>
<published>2020-07-10T05:56:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=6a6b16b2c227e0d94f0e82e33a6f6ca2e5b32745'/>
<id>urn:sha1:6a6b16b2c227e0d94f0e82e33a6f6ca2e5b32745</id>
<content type='text'>
... which default to the BUILDSDK_CFLAGS in any case.

(From OE-Core rev: 9b4bf667bac49131cee382f2f346fc054d5f28b9)

Signed-off-by: Douglas Royds &lt;douglas.royds@taitradio.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>nativesdk: clear MACHINE_FEATURES</title>
<updated>2020-07-12T11:21:48+00:00</updated>
<author>
<name>Douglas</name>
<email>douglas.royds@taitradio.com</email>
</author>
<published>2020-07-10T06:36:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=30f401ab668f19dab1b0801724db928e295afae9'/>
<id>urn:sha1:30f401ab668f19dab1b0801724db928e295afae9</id>
<content type='text'>
Further to 96c20c9df7:
Try to avoid nativesdk recipes accidentally being dependent on MACHINE_FEATURES.

(From OE-Core rev: 956e5bd6862ca898143a234aa85cc83b1f2d1807)

Signed-off-by: Douglas Royds &lt;douglas.royds@taitradio.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>native/cross/nativesdk: Drop obsolete do_populate_sysroot[stamp-extra-info]</title>
<updated>2020-01-27T16:48:10+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2020-01-24T17:50:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=899d5579f65efb1aa3eb058f3e314c11165cff7d'/>
<id>urn:sha1:899d5579f65efb1aa3eb058f3e314c11165cff7d</id>
<content type='text'>
With recipe specific sysroot, these settings do nothing. Drop
the obsolete code.

(From OE-Core rev: 6269f1935f5fd2d9397045566f2e0e4fc0df85cb)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>nativesdk.bbclass: Clear out LIBCEXTENSION and ABIEXTENSION</title>
<updated>2019-09-16T22:02:45+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2019-09-14T08:04:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=d84e9f446a3e948f213182c3abfdaa168cc56c1f'/>
<id>urn:sha1:d84e9f446a3e948f213182c3abfdaa168cc56c1f</id>
<content type='text'>
These variables dont make sense for nativesdk targets which essentially
are target only properties, this helps in avoiding recompile of
nativesdk-libgcc-initial when switch libcs. nativesdk targets are glibc
only for OE

(From OE-Core rev: aff2d1264030a8061fc1b31dae0f369bfd76826b)

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>nativesdk.bbclass: set consistent staging dirs regardless of multilib</title>
<updated>2018-09-27T22:41:41+00:00</updated>
<author>
<name>Chen Qi</name>
<email>Qi.Chen@windriver.com</email>
</author>
<published>2018-09-27T08:48:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=2d83a6c579a71e701c4a3c1c5f3c97802bf9576c'/>
<id>urn:sha1:2d83a6c579a71e701c4a3c1c5f3c97802bf9576c</id>
<content type='text'>
For now, the RECIPE_SYSROOT of nativesdk recipes is ${WORKDIR}/recipe-sysroot
if multilib is disabled and ${WORKDIR}/nativesdk-recipe-sysroot if multilib
is enabled. And it's causing chaos. Problems I've met include:
1) 'File Exists' error when doing extend_recipe_sysroot
2) Rebuilding failure about cmake based nativesdk recipes if toggling multilib

In nativesdk.bbclass, We've set MULTILIBS to be "", and we've changed MLPREFIX
to be 'nativesdk-', I think we should also set consistent RECIPE_SYSROOT to be
${WORKDIR}/recipe-sysroot.

Below is an example showing why previous settings will cause do_prepare_recipe_sysroot
failure.

e.g.
A -&gt; C
B -&gt; C
A's RECIPE_SYSROOT is .../recipe-sysroot and B's RECIPE_SYSROOT is
.../nativesdk-recipe-sysroot.
As extend_recipe_sysroot function uses shared manifest, i.e., the same
manifest of C for both A and B, then there must be one of them having
the wrong manifest. And the wrong manifest results in RECIPE_SYSROOT
not cleaned up before installing new components, thus the following error.

  Exception: FileExistsError: [Errno 17] File exists: xxx -&gt; xxx

This happens when toggling multilib and also between nativesdk recipes and
crosssdk, cross-canadian recipes. The latter situation also explains
why choosing ${WORKDIR}/recipe-sysroot instead of ${WORKDIR}/nativesdk-recipe-sysroot.
If we use 'nativesdk-recipe-sysroot', we still need to modify the extend_recipe_sysroot
function to treat crosssdk and cross-canadian as special cases. Using
'recipe-sysroot' does not have this problem.

(From OE-Core rev: 665934a506cc560bfbc469f5ed095e7d54e353a5)

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