On 20-01-2024 14:19, Richard Purdie wrote:
CAUTION: This email comes from a non Wind River email account!
Do not click links or open attachments unless you recognize the sender and know the content is safe.

On Sat, 2024-01-20 at 08:42 +0000, Richard Purdie via
lists.openembedded.org wrote:
On Fri, 2024-01-19 at 07:09 -0800, Shinde, Yash via
lists.openembedded.org wrote:
From: Yash Shinde <Yash.Shinde@windriver.com>

Fixes: Exception: no cargo executable found at
       `${B}/rustc-1.74.1-src/build/x86_64-unknown-linux-gnu/stage0/bin/cargo`

Fix the cargo binary path error on oe-selftest and path set to rust-snapshot dir.

Patch sent to upstream- https://github.com/rust-lang/rust/pull/120125

Signed-off-by: Yash Shinde <Yash.Shinde@windriver.com>
---
 .../rust/files/cargo-path.patch               | 37 +++++++++++++++++++
 1 file changed, 37 insertions(+)
 create mode 100644 meta/recipes-devtools/rust/files/cargo-path.patch
The series failed on mips in testing:

https://autobuilder.yoctoproject.org/typhoon/#/builders/147/builds/1196/steps/12/logs/stdio

Sadly the error redirection is to a file and even in the failed build,
we do not have that file as far as I can see so it is hard to know what
went wrong.
I was able to find the file:

https://autobuilder.yocto.io/pub/failed-builds-data/summary.txt

(buildbot-venv) [pokybuild@rocky9-ty-1 build-st-1051644]$ cp ./tmp/work/mips32r2-poky-linux/rust/1.74.1/rustc-1.74.1-src/summary.txt /srv/autobuilder/autobuilder.yocto.io/pub/failed-builds-data/

---- [ui] tests/ui/issues/issue-32805.rs stdout ----

.
.
.
.

failures:
    [ui] tests/ui/issues/issue-32805.rs
    [ui] tests/ui/numbers-arithmetic/i128.rs
    [ui] tests/ui/numbers-arithmetic/saturating-float-casts.rs
    [ui] tests/ui/runtime/backtrace-debuginfo.rs

test result: FAILED. 15246 passed; 4 failed; 291 ignored; 0 measured; 21 filtered out; finished in 693.24s

Some tests failed in compiletest suite=ui mode=ui host=x86_64-unknown-linux-gnu target=mips-poky-linux-gnu
Testing stage1 compiletest suite=run-pass-valgrind mode=run-pass-valgrind (x86_64-unknown-linux-gnu -> mips-poky-linux-gnu)

It is observed that "mips(32 bits)" target is pretty unstable with rust tests. Thus, we decided unanimously to skip mips(32 bits) target in the initial implementation of the rust oe-selftest. I did check the testsuite for the mips target and many more failures were found.

According to the rust doc, the mips target variants are classified into tier 3 targets( for which the Rust codebase has support for, but which the Rust project does not build or test automatically, so they may or may not work.), which might be the reason for failures.

https://doc.rust-lang.org/nightly/rustc/platform-support.html#tier-3:~:text=mips%2Dunknown%2Dlinux%2Dgnu,kernel%204.4%2C%20glibc%202.23)


Regards,
Yash


Cheers,

Richard