<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/classes-recipe/rust-common.bbclass, branch halstead/hashclient</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=halstead%2Fhashclient</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=halstead%2Fhashclient'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2023-12-09T19:17:11+00:00</updated>
<entry>
<title>rust: cargo: Convert single-valued variables to weak defaults</title>
<updated>2023-12-09T19:17:11+00:00</updated>
<author>
<name>Alex Kiernan</name>
<email>alex.kiernan@gmail.com</email>
</author>
<published>2023-12-08T12:00:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=dddfe1e3f4135d974c6692071e08f6e0a96df1b3'/>
<id>urn:sha1:dddfe1e3f4135d974c6692071e08f6e0a96df1b3</id>
<content type='text'>
All of these variables are single-valued, so we can use weak-defaults
for them and only see the final assignment after parsing.

(From OE-Core rev: 3221e82a35a149fdf38fe66dcd5de758ac1b9185)

Signed-off-by: Alex Kiernan &lt;alex.kiernan@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>rust-common.bbclass: Define rust arch for x32 platforms</title>
<updated>2023-12-02T17:18:57+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2023-12-02T00:09:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=c55cb443d029e15da45802c9bf1d7e82a72bb15d'/>
<id>urn:sha1:c55cb443d029e15da45802c9bf1d7e82a72bb15d</id>
<content type='text'>
(From OE-Core rev: 02d6c89ca2e72e95d093282f5626e607060da588)

Signed-off-by: Khem Raj &lt;raj.khem@gmail.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>rust: drop PE, PR from /usr/src/debug paths</title>
<updated>2023-11-20T15:30:53+00:00</updated>
<author>
<name>Martin Jansa</name>
<email>martin.jansa@gmail.com</email>
</author>
<published>2023-11-16T22:48:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=d7a8a51cf569192d33e753d0e5375ef8152b8986'/>
<id>urn:sha1:d7a8a51cf569192d33e753d0e5375ef8152b8986</id>
<content type='text'>
(From OE-Core rev: e4931b1d6f147fc7ced080e30c63f0aaf0d1e7ff)

Signed-off-by: Martin Jansa &lt;martin.jansa@gmail.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>rust-common.bbclass: move musl-specific linking fix from rust-source.inc</title>
<updated>2023-06-27T15:23:40+00:00</updated>
<author>
<name>Alexander Kanavin</name>
<email>alex.kanavin@gmail.com</email>
</author>
<published>2023-06-25T21:22:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=f01cd7aeaf18a89afe9670a0ff0a8a0d46c02131'/>
<id>urn:sha1:f01cd7aeaf18a89afe9670a0ff0a8a0d46c02131</id>
<content type='text'>
This needs to be done for any item that is linked under rustc,
and not just rust itself. Latest python-cryptography exposes the issue.

(From OE-Core rev: d3811228747590ea06e8d68be4785d45ec9c478f)

Signed-off-by: Alexander Kanavin &lt;alex@linutronix.de&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>rust: Do not use default compiler flags defined in CC crate</title>
<updated>2023-01-12T23:08:58+00:00</updated>
<author>
<name>Anton Antonov</name>
<email>anton.antonov@arm.com</email>
</author>
<published>2023-01-03T14:36:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=755ee95a45a4a5e3f880b6143e755ec699194416'/>
<id>urn:sha1:755ee95a45a4a5e3f880b6143e755ec699194416</id>
<content type='text'>
Rust crates build dependecy C libraries using "CC" crate.
This crate adds some default compiler parameters depending on target arch.
For some targets these parameters conflict with the parameters defined by OE.

Warnings/errors like this can be seen in the case:

cc1: error: switch '-mcpu=cortex-a15' conflicts with switch '-march=armv7-a+fp' [-Werror]

Lets use only the OE parameters by exporting CRATE_CC_NO_DEFAULTS.
https://github.com/rust-lang/cc-rs#external-configuration-via-environment-variables

This patch fixes https://bugzilla.yoctoproject.org/show_bug.cgi?id=14947

(From OE-Core rev: 0c07089bdf7e0d7d8f37552db0bcd75f860979d9)

Signed-off-by: Anton Antonov &lt;Anton.Antonov@arm.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>rust: Enable baremetal targets</title>
<updated>2022-12-21T10:16:31+00:00</updated>
<author>
<name>Alejandro Hernandez Samaniego</name>
<email>alejandro@enedino.org</email>
</author>
<published>2022-12-15T07:32:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=901f7ed6ba76cb97d149b6481dfb73887790c55b'/>
<id>urn:sha1:901f7ed6ba76cb97d149b6481dfb73887790c55b</id>
<content type='text'>
Allow rust to build for baremetal targets by generating the proper target
triple, follow the format specified by rusts Triple [1], that is:

&lt;arch&gt;-&lt;vendor&gt;-&lt;os&gt;-&lt;abi&gt;

This is done automatically based on both TARGET_OS and TCLIBC.

For example, a riscv64 baremetal target triple would look like this:
riscv64gc-poky-none-elf

matching rusts own target triple for riscv64 according to platform-support [2]

[1] https://docs.rs/target-lexicon/latest/target_lexicon/struct.Triple.html
[2] https://doc.rust-lang.org/stable/rustc/platform-support.html

(From OE-Core rev: 3bff689f0c5ea73076ce0510872b0552e8660cbe)

Signed-off-by: Alejandro Enedino Hernandez Samaniego &lt;alejandro@enedino.org&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>rust-common.bbclass: use built-in rust targets for -native builds</title>
<updated>2022-11-02T09:21:29+00:00</updated>
<author>
<name>Alexander Kanavin</name>
<email>alex.kanavin@gmail.com</email>
</author>
<published>2022-11-01T09:17:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=e33afcd0dca526c1991f5ed0062764481fe70e52'/>
<id>urn:sha1:e33afcd0dca526c1991f5ed0062764481fe70e52</id>
<content type='text'>
Rust targets have the form of 'arch-unknown-linux-gnu' while
oe's native targets are 'arch-linux-gnu', e.g. omit the vendor.

The effect this has on rust-native builds is that rust first builds
itself as stage0 for arch-unknown-linux-gnu, then builds itself
again for arch-unknown-linux-gnu, then finally uses the compiler
from second step to 'cross-compile' a compiler for 'arch-linux-gnu'.

This last step is really not necessary, and we could save 4 minutes
out of 12 if it is eliminated. Which is what this patch does
by setting the target directly to 'arch-unknown-linux-gnu'; rust's
build system then shortcuts the build process after the second step.

Given a working rust-native will be needed as early as possible in a
typical yocto build (e.g. when in a not too distant future making a
useful kernel will not be possible without rust), producing it faster
is important.

(From OE-Core rev: a918ea5645d8a67cedaf3ecf6c382520bbcad85b)

Signed-off-by: Alexander Kanavin &lt;alex@linutronix.de&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>classes: Update classes to match new bitbake class scope functionality</title>
<updated>2022-08-12T14:27:17+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2022-08-10T13:35:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=fd1517e2b51a170f2427122c6b95396db251d827'/>
<id>urn:sha1:fd1517e2b51a170f2427122c6b95396db251d827</id>
<content type='text'>
Move classes to classes-global or classes-recipe as appropriate to take
advantage of new bitbake functionality to check class scope/usage.

(From OE-Core rev: f5c128008365e141082c129417eb72d2751e8045)

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