From: Yash Shinde Date: Thu, 25 Jan 2024 13:16:03 +0000 (-0800) Subject: rust: Enable rust oe-selftest. X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8f3a2841540fc4779bbd7e11d910edcdc8b47683;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git rust: Enable rust oe-selftest. * Enable rust oe-selftest. * Include the dependent patches for rust oe-selftest in meta/recipes-devtools/rust/rust-source.inc * Disable rust oe-selftest for mips32 target (Rust upstream has classified it into tier 3 target, for which the Rust project does not build or test automatically) as it is unstable with rust tests. https://doc.rust-lang.org/nightly/rustc/platform-support.html#tier-3 * The testing is done on arm32, arm64, mips64, x86 and x86_64 targets on Ubuntu 22.04. Signed-off-by: Yash Shinde Signed-off-by: Richard Purdie --- diff --git a/meta/lib/oeqa/selftest/cases/rust.py b/meta/lib/oeqa/selftest/cases/rust.py index 0d7d5244714..164ad11ecd1 100644 --- a/meta/lib/oeqa/selftest/cases/rust.py +++ b/meta/lib/oeqa/selftest/cases/rust.py @@ -40,7 +40,12 @@ def parse_results(filename): class RustSelfTestSystemEmulated(OESelftestTestCase, OEPTestResultTestCase): def test_rust(self, *args, **kwargs): # Disable Rust Oe-selftest - self.skipTest("The Rust Oe-selftest is disabled.") + #self.skipTest("The Rust Oe-selftest is disabled.") + + # Skip mips32 target since it is unstable with rust tests + machine = get_bb_var('MACHINE') + if machine == "qemumips": + self.skipTest("The mips32 target is skipped for Rust Oe-selftest.") # build remote-test-server before image build recipe = "rust" diff --git a/meta/recipes-devtools/rust/rust-source.inc b/meta/recipes-devtools/rust/rust-source.inc index 83a0dbc15fa..e02829e6b38 100644 --- a/meta/recipes-devtools/rust/rust-source.inc +++ b/meta/recipes-devtools/rust/rust-source.inc @@ -10,6 +10,10 @@ SRC_URI += "https://static.rust-lang.org/dist/rustc-${RUST_VERSION}-src.tar.xz;n file://0004-musl-Define-O_LARGEFILE-for-riscv32.patch;patchdir=${RUSTSRC} \ file://0005-musl-Define-SOCK_SEQPACKET-in-common-place.patch;patchdir=${RUSTSRC} \ file://0001-Revert-Map-source-absolute-paths-to-OUT_DIR-as-relat.patch;patchdir=${RUSTSRC} \ + file://cargo-path.patch;patchdir=${RUSTSRC} \ + file://custom-target-cfg.patch;patchdir=${RUSTSRC} \ + file://rustc-bootstrap.patch;patchdir=${RUSTSRC} \ + file://target-build-value.patch;patchdir=${RUSTSRC} \ " SRC_URI[rust.sha256sum] = "b98c09d968529212fb29eec7d6d3e9bdaa869810679b7fb86a1ca69469d75f5e"