All of lore.kernel.org
 help / color / mirror / Atom feed
From: Otavio Salvador <otavio.salvador@ossystems.com.br>
To: Otavio Salvador <otavio@ossystems.com.br>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>,
	Khem Raj <raj.khem@gmail.com>,
	Patches and discussions about the oe-core layer
	<openembedded-core@lists.openembedded.org>
Subject: Re: [OE-core] [PATCH v2 2/2] cargo-cross-canadian: Use SDK's flags during target linking
Date: Wed, 20 Jul 2022 16:13:21 -0300	[thread overview]
Message-ID: <CAP9ODKoBKJ8fWguny2WOzCAf+wnuvcX8Kymsa07HnKAN=JjUfA@mail.gmail.com> (raw)
In-Reply-To: <CAP9ODKpcXKzG_kw4OgdPnZx51eBDKqq45XuCQFXKfD839qpruw@mail.gmail.com>


[-- Attachment #1.1: Type: text/plain, Size: 1051 bytes --]

Hello Richard,

Em qua., 20 de jul. de 2022 às 15:11, Otavio Salvador <
otavio@ossystems.com.br> escreveu:

> Em qua., 20 de jul. de 2022 às 14:21, Richard Purdie <
> richard.purdie@linuxfoundation.org> escreveu:
>
>> I've done a bit more work on this and the more I dig, the more I think
>> we have some issues we need to sort with taking a step back and
>> checking some assumptions.
>>
>> What I'm lacking is a good way to test the resulting rust toolchain.
>> Would someone with some rust knowledge be able to add something to
>> meta/lib/oeqa/sdk/cases/ which tested rust in the SDK?
>>
>> If someone can add some rust tests in the SDK, I think I might have an
>> idea of what the patches look like to properly fix the rust toolchain
>> there.
>>
>
> Ok, I will send you a test case shortly.
>

As promised. See attached.


-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9 9981-7854          Mobile: +1 (347) 903-9750

[-- Attachment #1.2: Type: text/html, Size: 1900 bytes --]

[-- Attachment #2: 0001-oeqa-sdk-rust-add-basic-cargo-test.patch --]
[-- Type: text/x-patch, Size: 2557 bytes --]

From d62112db3e4bc9ec9e3c7ca480ebf2f3a207e4a6 Mon Sep 17 00:00:00 2001
From: Otavio Salvador <otavio@ossystems.com.br>
Date: Wed, 20 Jul 2022 16:06:01 -0300
Subject: [PATCH] oeqa: sdk: rust: add basic cargo test

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
 meta/lib/oeqa/sdk/cases/rust.py               | 31 +++++++++++++++++++
 meta/lib/oeqa/sdk/files/rust/hello/Cargo.toml |  6 ++++
 .../lib/oeqa/sdk/files/rust/hello/src/main.rs |  3 ++
 3 files changed, 40 insertions(+)
 create mode 100644 meta/lib/oeqa/sdk/cases/rust.py
 create mode 100644 meta/lib/oeqa/sdk/files/rust/hello/Cargo.toml
 create mode 100644 meta/lib/oeqa/sdk/files/rust/hello/src/main.rs

diff --git a/meta/lib/oeqa/sdk/cases/rust.py b/meta/lib/oeqa/sdk/cases/rust.py
new file mode 100644
index 0000000000..c29b06223b
--- /dev/null
+++ b/meta/lib/oeqa/sdk/cases/rust.py
@@ -0,0 +1,31 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
+import os
+import shutil
+import unittest
+
+from oeqa.core.utils.path import remove_safe
+from oeqa.sdk.case import OESDKTestCase
+
+from oeqa.utils.subprocesstweak import errors_have_output
+errors_have_output()
+
+class RustCompileTest(OESDKTestCase):
+    td_vars = ['MACHINE']
+
+    @classmethod
+    def setUpClass(self):
+        shutil.copytree(os.path.join(self.tc.sdk_files_dir, "rust/hello"),
+                        os.path.join(self.tc.sdk_dir, "hello"))
+
+    def setUp(self):
+        machine = self.td.get("MACHINE")
+        if not (self.tc.hasHostPackage("packagegroup-rust-cross-canadian-%s" % machine) or
+                self.tc.hasHostPackage("^rust-cross-canadian-", regex=True) or
+                self.tc.hasHostPackage("^cargo-cross-canadian-", regex=True)):
+            raise unittest.SkipTest("RustCompileTest class: SDK doesn't contain a Rust cross-canadian toolchain")
+
+    def test_cargo_build(self):
+        self._run('cd %s/hello; cargo build' % self.tc.sdk_dir)
diff --git a/meta/lib/oeqa/sdk/files/rust/hello/Cargo.toml b/meta/lib/oeqa/sdk/files/rust/hello/Cargo.toml
new file mode 100644
index 0000000000..fe619478a6
--- /dev/null
+++ b/meta/lib/oeqa/sdk/files/rust/hello/Cargo.toml
@@ -0,0 +1,6 @@
+[package]
+name = "hello"
+version = "0.1.0"
+edition = "2021"
+
+[dependencies]
diff --git a/meta/lib/oeqa/sdk/files/rust/hello/src/main.rs b/meta/lib/oeqa/sdk/files/rust/hello/src/main.rs
new file mode 100644
index 0000000000..a06c03f82a
--- /dev/null
+++ b/meta/lib/oeqa/sdk/files/rust/hello/src/main.rs
@@ -0,0 +1,3 @@
+fn main() {
+    println!("Hello, OpenEmbedded world!");
+}
-- 
2.36.1


  parent reply	other threads:[~2022-07-20 19:13 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-10 16:42 [PATCH v2 1/2] rust-common: Fix use of target definitions for SDK generation Otavio Salvador
2022-07-10 16:43 ` [PATCH v2 2/2] cargo-cross-canadian: Use SDK's flags during target linking Otavio Salvador
2022-07-18 12:45   ` [OE-core] " Richard Purdie
2022-07-18 15:49     ` Otavio Salvador
2022-07-18 15:59       ` Richard Purdie
2022-07-18 19:25         ` Otavio Salvador
2022-07-18 21:18           ` Richard Purdie
2022-07-18 21:41             ` Otavio Salvador
2022-07-18 22:54               ` Richard Purdie
2022-07-19  0:07                 ` Otavio Salvador
2022-07-20 17:21                   ` Richard Purdie
2022-07-20 18:11                     ` Otavio Salvador
2022-07-20 18:26                       ` Richard Purdie
2022-07-20 19:13                       ` Otavio Salvador [this message]
2022-07-13 16:05 ` [PATCH v2 1/2] rust-common: Fix use of target definitions for SDK generation Sundeep KOKKONDA
2022-07-14  0:08 ` [OE-core] " Alejandro Enedino Hernandez Samaniego
2022-07-14 11:24   ` Otavio Salvador

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAP9ODKoBKJ8fWguny2WOzCAf+wnuvcX8Kymsa07HnKAN=JjUfA@mail.gmail.com' \
    --to=otavio.salvador@ossystems.com.br \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=otavio@ossystems.com.br \
    --cc=raj.khem@gmail.com \
    --cc=richard.purdie@linuxfoundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.