On Tue,  2 Aug 2022 09:23:52 +0530
"Pgowda" <pgowda....@gmail.com> wrote:

> From: pgowda <pgowda....@gmail.com>
> 
> The patch implements Rust testing framework similar to other selftest,
> specifically the gcc selftest in OE. It uses the client and server
> based method to test the binaries for cross-target on the image.
> The test framework is a wrapper around the Rust build system as ./x.py
> test.
> It tests many functionalities of Rust distribution like tools,
> documentation, libraries, packages, tools, Cargo, Crater etc.
> Please refer the following link for detailed description of Rust
> testing:-
> https://rustc-dev-guide.rust-lang.org/tests/intro.html#tool-tests
> 
> To support the rust tests in oe-core, the following functions were
> added:-
> setup_cargo_environment(): Build bootstrap and some early stage tools.
> do_rust_setup_snapshot(): Install the snapshot version of rust binaries.
> do_configure(): To generate config.toml
> do_compile(): To build "remote-test-server" for qemu target image.
> 
> Approximate Number of Tests Run in the Rust Testsuite :- 18000
> Approximate Number of Tests that FAIL in bitbake environment :- 100-150
> Normally majority of the testcases are present in major folder "test/"
> It contributes to more than 80% of the testcases present in Rust test
> framework. These tests pass as expected on any Rust versions without
> much fuss. The tests that fail are of less important and contribute to
> less than 2% of the total testcases. These minor tests are observed to
> work on some versions and fail on others. They have to be added, ignored
> or excluded for different versions as per the behavior.
> These tests have been ignored or excluded in the Rust selftest
> environment to generate success of completing the testsuite.
> 
> These tests work in parallel mode even in the skipped test mode as
> expected. Although the patch to disable tests is large, it is very simple
> in that it only disables tests. When updating to a newer version of Rust,
> the patch can usually be ported in a day.
> 
> Signed-off-by: pgowda <pgowda....@gmail.com>
> Signed-off-by: Vinay Kumar <vinay.m.e...@gmail.com>
> ---
>  meta/classes/rust-target-config.bbclass       |   2 +-
>  meta/lib/oeqa/selftest/cases/rust.py          |  57 +++
>  meta/recipes-devtools/rust/rust-testsuite.inc | 164 ++++++
>  .../rust-testsuite/rust-oe-selftest.patch     | 477 ++++++++++++++++++
>  .../rust/rust-testsuite_1.62.0.bb             |   3 +
>  5 files changed, 702 insertions(+), 1 deletion(-)
>  create mode 100644 meta/lib/oeqa/selftest/cases/rust.py
>  create mode 100644 meta/recipes-devtools/rust/rust-testsuite.inc
>  create mode 100644 
> meta/recipes-devtools/rust/rust-testsuite/rust-oe-selftest.patch
>  create mode 100644 meta/recipes-devtools/rust/rust-testsuite_1.62.0.bb
> 
> diff --git a/meta/classes/rust-target-config.bbclass 
> b/meta/classes/rust-target-config.bbclass
> index 87b7dee3ed..26dc931971 100644
> --- a/meta/classes/rust-target-config.bbclass
> +++ b/meta/classes/rust-target-config.bbclass
> @@ -344,7 +344,7 @@ def rust_gen_target(d, thing, wd, arch):
>      tspec['linker-is-gnu'] = True
>      tspec['linker-flavor'] = "gcc"
>      tspec['has-rpath'] = True
> -    tspec['has-elf-tls'] = True
> +#    tspec['has-elf-tls'] = True

I'm not sure of the meaning of the above change, can you clarify that?

Thanks.
-- 
Luca Ceresoli, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#168771): 
https://lists.openembedded.org/g/openembedded-core/message/168771
Mute This Topic: https://lists.openembedded.org/mt/92764644/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to