All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 1/3] Rust oe-selftest script
@ 2021-09-29  8:04 Pgowda
  2021-09-29  8:04 ` [PATCH v2 2/3] Rust cross testing file Pgowda
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Pgowda @ 2021-09-29  8:04 UTC (permalink / raw)
  To: openembedded-core
  Cc: richard.purdie, rwmacleod, alex.kanavin, umesh.kalappa0,
	vinay.m.engg, Pgowda

The file builds remote-test-server and executes rust testing
remotely using background ssh. It adds the necessary test environment
and variables to run the rust oe-selftest.

Print the results in case of failure of runCmd().

Signed-off-by: Pgowda <pgowda.cve@gmail.com>
---
 meta/lib/oeqa/selftest/cases/rust.py | 53 ++++++++++++++++++++++++++++
 1 file changed, 53 insertions(+)
 create mode 100644 meta/lib/oeqa/selftest/cases/rust.py

diff --git a/meta/lib/oeqa/selftest/cases/rust.py b/meta/lib/oeqa/selftest/cases/rust.py
new file mode 100644
index 0000000000..7978758221
--- /dev/null
+++ b/meta/lib/oeqa/selftest/cases/rust.py
@@ -0,0 +1,53 @@
+# SPDX-License-Identifier: MIT
+import os
+import subprocess
+from oeqa.core.decorator import OETestTag
+from oeqa.core.case import OEPTestResultTestCase
+from oeqa.selftest.case import OESelftestTestCase
+from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_bb_vars, runqemu, Command
+from oeqa.utils.sshcontrol import SSHControl
+
+# Total time taken for testing is of about 2hr 20min, with PARALLEL_MAKE set to 40 number of jobs.
+class RustSelfTestBase(OESelftestTestCase, OEPTestResultTestCase):
+
+	def run_check_emulated(self, *args, **kwargs):
+		# build remote-test-server before image build
+		recipe = "rust-testsuite"
+		bitbake("{} -c compile".format(recipe))
+		builddir = get_bb_var("B", "rust-testsuite")
+		# build core-image-minimal with required packages
+		default_installed_packages = ["libgcc", "libstdc++", "libatomic", "libgomp"]
+		features = []
+		features.append('IMAGE_FEATURES += "ssh-server-openssh"')
+		features.append('CORE_IMAGE_EXTRA_INSTALL += "{0}"'.format(" ".join(default_installed_packages)))
+		self.write_config("\n".join(features))
+		bitbake("core-image-minimal")
+		# wrap the execution with a qemu instance
+		with runqemu("core-image-minimal", runqemuparams = "nographic", qemuparams = "-m 512") as qemu:
+			# Copy remote-test-server to image through scp
+			ssh = SSHControl(ip=qemu.ip, logfile=qemu.sshlog, user="root")
+			ssh.copy_to(builddir + "/" + "build/x86_64-unknown-linux-gnu/stage1-tools-bin/remote-test-server","~/")
+			# Execute remote-test-server on image through background ssh
+			command = '~/remote-test-server -v remote'
+			sshrun=subprocess.Popen(("ssh", '-o',  'UserKnownHostsFile=/dev/null', '-o',  'StrictHostKeyChecking=no', '-f', "root@%s" % qemu.ip, command),
+                                shell=False,
+                                stdout=subprocess.PIPE,
+                                stderr=subprocess.PIPE)
+			# Get the values of variables.
+			targetsys = get_bb_var("TARGET_SYS", "rust-testsuite")
+			rustlibpath = get_bb_var("STAGING_LIBDIR_NATIVE", "rust-testsuite")
+			tmpdir = get_bb_var("TMPDIR", "rust-testsuite")
+			testargs = "--no-fail-fast --bless"
+			# Set path for target-poky-linux-gcc, RUST_TARGET_PATH and hosttools.
+			cmd = " export PATH=%s/../bin:$PATH;" % rustlibpath
+			cmd = cmd + " export PATH=%s/../bin/%s:%s/hosttools:$PATH;" % (rustlibpath, targetsys, tmpdir)
+			cmd = cmd + " export RUST_TARGET_PATH=%s/rustlib;" % rustlibpath
+			# Trigger testing.
+			cmd = cmd + " export TEST_DEVICE_ADDR=\"%s:12345\";" % qemu.ip
+			cmd = cmd + " cd %s;  python3 src/bootstrap/bootstrap.py test %s --target %s ;" % (builddir, testargs, targetsys)
+			result = runCmd(cmd)
+
+@OETestTag("toolchain-system")
+class RustSelfTestSystemEmulated(RustSelfTestBase):
+	def test_rust(self):
+		self.run_check_emulated("rust")
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH v2 2/3] Rust cross testing file
  2021-09-29  8:04 [PATCH v2 1/3] Rust oe-selftest script Pgowda
@ 2021-09-29  8:04 ` Pgowda
  2021-09-29 23:03   ` [OE-core] " Alexandre Belloni
  2021-09-29  8:04 ` [PATCH v2 3/3] Rust oe-selftest file Pgowda
  2021-10-05 18:19 ` [OE-core] [PATCH v2 1/3] Rust oe-selftest script Alexandre Belloni
  2 siblings, 1 reply; 14+ messages in thread
From: Pgowda @ 2021-09-29  8:04 UTC (permalink / raw)
  To: openembedded-core
  Cc: richard.purdie, rwmacleod, alex.kanavin, umesh.kalappa0,
	vinay.m.engg, Pgowda

The file is main entry point for rust oe-selftest.
It configures, compiles and runs the test suite framework.

It implements the above using the following functions:
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 qemutarget image.
---
 meta/recipes-devtools/rust/rust-testsuite.inc | 167 ++++++++++++++++++
 1 file changed, 167 insertions(+)
 create mode 100644 meta/recipes-devtools/rust/rust-testsuite.inc

diff --git a/meta/recipes-devtools/rust/rust-testsuite.inc b/meta/recipes-devtools/rust/rust-testsuite.inc
new file mode 100644
index 0000000000..861c4ff504
--- /dev/null
+++ b/meta/recipes-devtools/rust/rust-testsuite.inc
@@ -0,0 +1,167 @@
+SUMMARY = "Rust testing"
+HOMEPAGE = "https://rustc-dev-guide.rust-lang.org/tests/intro.html"
+SECTION = "test"
+LICENSE = "MIT | Apache-2.0"
+
+inherit rust
+inherit cargo_common
+
+DEPENDS += "file-native python3-native"
+EXCLUDE_FROM_WORLD = "1"
+
+S = "${RUSTSRC}"
+
+# Path of target specification file "target-poky-linux.json"
+export RUST_TARGET_PATH="${STAGING_LIBDIR_NATIVE}/rustlib"
+
+export FORCE_CRATE_HASH="${BB_TASKHASH}"
+
+# We don't want to use bitbakes vendoring because the rust sources do their
+# own vendoring.
+CARGO_DISABLE_BITBAKE_VENDORING = "1"
+
+# We can't use RUST_BUILD_SYS here because that may be "musl" if
+# TCLIBC="musl". Snapshots are always -unknown-linux-gnu
+SNAPSHOT_BUILD_SYS = "${BUILD_ARCH}-unknown-linux-gnu"
+setup_cargo_environment () {
+    # The first step is to build bootstrap and some early stage tools,
+    # these are build for the same target as the snapshot, e.g.
+    # x86_64-unknown-linux-gnu.
+    # Later stages are build for the native target (i.e. target.x86_64-linux)
+    cargo_common_do_configure
+
+    printf '[target.%s]\n' "${SNAPSHOT_BUILD_SYS}" >> ${CARGO_HOME}/config
+    printf "linker = '%s'\n" "${RUST_BUILD_CCLD}" >> ${CARGO_HOME}/config
+}
+
+include rust-common.inc
+
+do_rust_setup_snapshot () {
+    for installer in "${WORKDIR}/rust-snapshot-components/"*"/install.sh"; do
+        "${installer}" --prefix="${WORKDIR}/rust-snapshot" --disable-ldconfig
+    done
+
+    # Some versions of rust (e.g. 1.18.0) tries to find cargo in stage0/bin/cargo
+    # and fail without it there.
+    mkdir -p ${RUSTSRC}/build/${BUILD_SYS}
+    ln -sf ${WORKDIR}/rust-snapshot/ ${RUSTSRC}/build/${BUILD_SYS}/stage0
+
+    # Need to use uninative's loader if enabled/present since the library paths
+    # are used internally by rust and result in symbol mismatches if we don't
+    if [ ! -z "${UNINATIVE_LOADER}" -a -e "${UNINATIVE_LOADER}" ]; then
+        for bin in cargo rustc rustdoc; do
+            patchelf-uninative ${WORKDIR}/rust-snapshot/bin/$bin --set-interpreter ${UNINATIVE_LOADER}
+        done
+    fi
+}
+addtask rust_setup_snapshot after do_unpack before do_configure
+do_rust_setup_snapshot[dirs] += "${WORKDIR}/rust-snapshot"
+
+python do_configure() {
+    import json
+    from distutils.version import LooseVersion
+    try:
+        import configparser
+    except ImportError:
+        import ConfigParser as configparser
+
+    # toml is rather similar to standard ini like format except it likes values
+    # that look more JSON like. So for our purposes simply escaping all values
+    # as JSON seem to work fine.
+
+    e = lambda s: json.dumps(s)
+
+    config = configparser.RawConfigParser()
+
+    # [target.ARCH-unknown-linux-gnu] in case of x86_64 [target.ARCH-poky-linux]
+    target_section = "target.{}".format(d.getVar('TARGET_SYS', True))
+    config.add_section(target_section)
+
+    # Points to wrapper files which contain target specific compiler and linker commands.
+    config.set(target_section, "cxx", e(d.expand("${RUST_TARGET_CXX}")))
+    config.set(target_section, "cc", e(d.expand("${RUST_TARGET_CC}")))
+    config.set(target_section, "linker", e(d.expand("${RUST_TARGET_CCLD}")))
+
+    # If we don't do this rust-native will compile it's own llvm for BUILD.
+    # [target.${BUILD_ARCH}-unknown-linux-gnu]
+    target_section = "target.{}".format(d.getVar('SNAPSHOT_BUILD_SYS', True))
+    config.add_section(target_section)
+
+    # Wrapper scripts of build system.
+    config.set(target_section, "cxx", e(d.expand("${RUST_BUILD_CXX}")))
+    config.set(target_section, "cc", e(d.expand("${RUST_BUILD_CC}")))
+
+    # [llvm]
+    config.add_section("llvm")
+    config.set("llvm", "targets", e("ARM;AArch64;Mips;PowerPC;RISCV;X86"))
+
+    # [rust]
+    config.add_section("rust")
+    config.set("rust", "rpath", e(True))
+    config.set("rust", "channel", e("stable"))
+
+    if LooseVersion(d.getVar("PV")) < LooseVersion("1.32.0"):
+        config.set("rust", "use-jemalloc", e(False))
+
+    # Whether or not to optimize the compiler and standard library
+    config.set("rust", "optimize", e(True))
+
+    # Emits extraneous output from tests to ensure that failures of the test
+    # harness are debuggable just from logfiles
+    config.set("rust", "verbose-tests", e(True))
+
+    # Override default linker cc.
+    config.set("rust", "default-linker", e(d.expand("${RUST_BUILD_CCLD}")))
+
+    # [build]
+    config.add_section("build")
+    config.set("build", "submodules", e(False))
+    config.set("build", "docs", e(False))
+
+    rustc = d.expand("${WORKDIR}/rust-snapshot/bin/rustc")
+    config.set("build", "rustc", e(rustc))
+
+    cargo = d.expand("${WORKDIR}/rust-snapshot/bin/cargo")
+    config.set("build", "cargo", e(cargo))
+
+    config.set("build", "vendor", e(True))
+
+    targets = [d.getVar("TARGET_SYS", True)]
+    config.set("build", "target", e(targets))
+
+    hosts = [d.getVar("SNAPSHOT_BUILD_SYS", True)]
+    config.set("build", "host", e(hosts))
+
+    # We can't use BUILD_SYS since that is something the rust snapshot knows
+    # nothing about when trying to build some stage0 tools (like fabricate)
+    config.set("build", "build", e(d.getVar("SNAPSHOT_BUILD_SYS", True)))
+
+    with open("config.toml", "w") as f:
+        config.write(f)
+
+    # set up ${WORKDIR}/cargo_home
+    bb.build.exec_func("setup_cargo_environment", d)
+}
+
+
+rust_runx () {
+    echo "COMPILE ${PN}" "$@"
+
+    # CFLAGS, LDFLAGS, CXXFLAGS, CPPFLAGS are used by rust's build for a
+    # wide range of targets (not just TARGET). Yocto's settings for them will
+    # be inappropriate, avoid using.
+    unset CFLAGS
+    unset LDFLAGS
+    unset CXXFLAGS
+    unset CPPFLAGS
+
+    oe_cargo_fix_env
+
+    python3 src/bootstrap/bootstrap.py ${@oe.utils.parallel_make_argument(d, '-j %d')} "$@" --verbose
+}
+rust_runx[vardepsexclude] += "PARALLEL_MAKE"
+
+do_compile () {
+
+    rust_runx build src/tools/remote-test-server --target "${TARGET_SYS}"
+}
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH v2 3/3] Rust oe-selftest file
  2021-09-29  8:04 [PATCH v2 1/3] Rust oe-selftest script Pgowda
  2021-09-29  8:04 ` [PATCH v2 2/3] Rust cross testing file Pgowda
@ 2021-09-29  8:04 ` Pgowda
  2021-09-29 22:59   ` [OE-core] " Alexandre Belloni
  2021-10-05 18:19 ` [OE-core] [PATCH v2 1/3] Rust oe-selftest script Alexandre Belloni
  2 siblings, 1 reply; 14+ messages in thread
From: Pgowda @ 2021-09-29  8:04 UTC (permalink / raw)
  To: openembedded-core
  Cc: richard.purdie, rwmacleod, alex.kanavin, umesh.kalappa0,
	vinay.m.engg, Pgowda

Add file for rust oe-selftest

Signed-off-by: Pgowda <pgowda.cve@gmail.com>
---
 meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb | 3 +++
 1 file changed, 3 insertions(+)
 create mode 100644 meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb

diff --git a/meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb b/meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb
new file mode 100644
index 0000000000..ad758b71f4
--- /dev/null
+++ b/meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb
@@ -0,0 +1,3 @@
+require rust-testsuite.inc
+require rust-source-${PV}.inc
+require rust-snapshot-${PV}.inc
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [OE-core] [PATCH v2 3/3] Rust oe-selftest file
  2021-09-29  8:04 ` [PATCH v2 3/3] Rust oe-selftest file Pgowda
@ 2021-09-29 22:59   ` Alexandre Belloni
  2021-09-30  4:31     ` pgowda cve
  0 siblings, 1 reply; 14+ messages in thread
From: Alexandre Belloni @ 2021-09-29 22:59 UTC (permalink / raw)
  To: Pgowda
  Cc: openembedded-core, richard.purdie, rwmacleod, alex.kanavin,
	umesh.kalappa0, vinay.m.engg

Hello,

On 29/09/2021 01:04:48-0700, Pgowda wrote:
> Add file for rust oe-selftest
> 
> Signed-off-by: Pgowda <pgowda.cve@gmail.com>
> ---
>  meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb | 3 +++
>  1 file changed, 3 insertions(+)
>  create mode 100644 meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb
> 
> diff --git a/meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb b/meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb
> new file mode 100644
> index 0000000000..ad758b71f4
> --- /dev/null
> +++ b/meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb
> @@ -0,0 +1,3 @@
> +require rust-testsuite.inc
> +require rust-source-${PV}.inc
> +require rust-snapshot-${PV}.inc

Unless I missed something, this is missing a maintainer entry:

The following recipes do not have a maintainer assigned to them. Please add an entry to meta/conf/distro/include/maintainers.inc file.
rust-testsuite (/home/pokybuild/yocto-worker/oe-selftest-centos/build/meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb)

> -- 
> 2.31.1
> 

> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#156450): https://lists.openembedded.org/g/openembedded-core/message/156450
> Mute This Topic: https://lists.openembedded.org/mt/85943726/3617179
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com]
> -=-=-=-=-=-=-=-=-=-=-=-
> 


-- 
Alexandre Belloni, co-owner and COO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [OE-core] [PATCH v2 2/3] Rust cross testing file
  2021-09-29  8:04 ` [PATCH v2 2/3] Rust cross testing file Pgowda
@ 2021-09-29 23:03   ` Alexandre Belloni
  2021-09-30  7:27     ` [PATCH v3] " Pgowda
       [not found]     ` <16A988E1BC842A91.3292@lists.openembedded.org>
  0 siblings, 2 replies; 14+ messages in thread
From: Alexandre Belloni @ 2021-09-29 23:03 UTC (permalink / raw)
  To: Pgowda
  Cc: openembedded-core, richard.purdie, rwmacleod, alex.kanavin,
	umesh.kalappa0, vinay.m.engg

Hello,

On 29/09/2021 01:04:47-0700, Pgowda wrote:
> The file is main entry point for rust oe-selftest.
> It configures, compiles and runs the test suite framework.
> 
> It implements the above using the following functions:
> 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 qemutarget image.
> ---
>  meta/recipes-devtools/rust/rust-testsuite.inc | 167 ++++++++++++++++++
>  1 file changed, 167 insertions(+)
>  create mode 100644 meta/recipes-devtools/rust/rust-testsuite.inc
> 
> diff --git a/meta/recipes-devtools/rust/rust-testsuite.inc b/meta/recipes-devtools/rust/rust-testsuite.inc
> new file mode 100644
> index 0000000000..861c4ff504
> --- /dev/null
> +++ b/meta/recipes-devtools/rust/rust-testsuite.inc
> @@ -0,0 +1,167 @@
> +SUMMARY = "Rust testing"
> +HOMEPAGE = "https://rustc-dev-guide.rust-lang.org/tests/intro.html"
> +SECTION = "test"
> +LICENSE = "MIT | Apache-2.0"
> +
> +inherit rust
> +inherit cargo_common
> +
> +DEPENDS += "file-native python3-native"

I believe you are missing a dependency on ninja-native:

https://autobuilder.yoctoproject.org/typhoon/#/builders/73/builds/4058/steps/18/logs/stdio

| Couldn't find required command: ninja
| You should install ninja, or set `ninja=false` in config.toml in the `[llvm]` section.

> +EXCLUDE_FROM_WORLD = "1"
> +
> +S = "${RUSTSRC}"
> +
> +# Path of target specification file "target-poky-linux.json"
> +export RUST_TARGET_PATH="${STAGING_LIBDIR_NATIVE}/rustlib"
> +
> +export FORCE_CRATE_HASH="${BB_TASKHASH}"
> +
> +# We don't want to use bitbakes vendoring because the rust sources do their
> +# own vendoring.
> +CARGO_DISABLE_BITBAKE_VENDORING = "1"
> +
> +# We can't use RUST_BUILD_SYS here because that may be "musl" if
> +# TCLIBC="musl". Snapshots are always -unknown-linux-gnu
> +SNAPSHOT_BUILD_SYS = "${BUILD_ARCH}-unknown-linux-gnu"
> +setup_cargo_environment () {
> +    # The first step is to build bootstrap and some early stage tools,
> +    # these are build for the same target as the snapshot, e.g.
> +    # x86_64-unknown-linux-gnu.
> +    # Later stages are build for the native target (i.e. target.x86_64-linux)
> +    cargo_common_do_configure
> +
> +    printf '[target.%s]\n' "${SNAPSHOT_BUILD_SYS}" >> ${CARGO_HOME}/config
> +    printf "linker = '%s'\n" "${RUST_BUILD_CCLD}" >> ${CARGO_HOME}/config
> +}
> +
> +include rust-common.inc
> +
> +do_rust_setup_snapshot () {
> +    for installer in "${WORKDIR}/rust-snapshot-components/"*"/install.sh"; do
> +        "${installer}" --prefix="${WORKDIR}/rust-snapshot" --disable-ldconfig
> +    done
> +
> +    # Some versions of rust (e.g. 1.18.0) tries to find cargo in stage0/bin/cargo
> +    # and fail without it there.
> +    mkdir -p ${RUSTSRC}/build/${BUILD_SYS}
> +    ln -sf ${WORKDIR}/rust-snapshot/ ${RUSTSRC}/build/${BUILD_SYS}/stage0
> +
> +    # Need to use uninative's loader if enabled/present since the library paths
> +    # are used internally by rust and result in symbol mismatches if we don't
> +    if [ ! -z "${UNINATIVE_LOADER}" -a -e "${UNINATIVE_LOADER}" ]; then
> +        for bin in cargo rustc rustdoc; do
> +            patchelf-uninative ${WORKDIR}/rust-snapshot/bin/$bin --set-interpreter ${UNINATIVE_LOADER}
> +        done
> +    fi
> +}
> +addtask rust_setup_snapshot after do_unpack before do_configure
> +do_rust_setup_snapshot[dirs] += "${WORKDIR}/rust-snapshot"
> +
> +python do_configure() {
> +    import json
> +    from distutils.version import LooseVersion
> +    try:
> +        import configparser
> +    except ImportError:
> +        import ConfigParser as configparser
> +
> +    # toml is rather similar to standard ini like format except it likes values
> +    # that look more JSON like. So for our purposes simply escaping all values
> +    # as JSON seem to work fine.
> +
> +    e = lambda s: json.dumps(s)
> +
> +    config = configparser.RawConfigParser()
> +
> +    # [target.ARCH-unknown-linux-gnu] in case of x86_64 [target.ARCH-poky-linux]
> +    target_section = "target.{}".format(d.getVar('TARGET_SYS', True))
> +    config.add_section(target_section)
> +
> +    # Points to wrapper files which contain target specific compiler and linker commands.
> +    config.set(target_section, "cxx", e(d.expand("${RUST_TARGET_CXX}")))
> +    config.set(target_section, "cc", e(d.expand("${RUST_TARGET_CC}")))
> +    config.set(target_section, "linker", e(d.expand("${RUST_TARGET_CCLD}")))
> +
> +    # If we don't do this rust-native will compile it's own llvm for BUILD.
> +    # [target.${BUILD_ARCH}-unknown-linux-gnu]
> +    target_section = "target.{}".format(d.getVar('SNAPSHOT_BUILD_SYS', True))
> +    config.add_section(target_section)
> +
> +    # Wrapper scripts of build system.
> +    config.set(target_section, "cxx", e(d.expand("${RUST_BUILD_CXX}")))
> +    config.set(target_section, "cc", e(d.expand("${RUST_BUILD_CC}")))
> +
> +    # [llvm]
> +    config.add_section("llvm")
> +    config.set("llvm", "targets", e("ARM;AArch64;Mips;PowerPC;RISCV;X86"))
> +
> +    # [rust]
> +    config.add_section("rust")
> +    config.set("rust", "rpath", e(True))
> +    config.set("rust", "channel", e("stable"))
> +
> +    if LooseVersion(d.getVar("PV")) < LooseVersion("1.32.0"):
> +        config.set("rust", "use-jemalloc", e(False))
> +
> +    # Whether or not to optimize the compiler and standard library
> +    config.set("rust", "optimize", e(True))
> +
> +    # Emits extraneous output from tests to ensure that failures of the test
> +    # harness are debuggable just from logfiles
> +    config.set("rust", "verbose-tests", e(True))
> +
> +    # Override default linker cc.
> +    config.set("rust", "default-linker", e(d.expand("${RUST_BUILD_CCLD}")))
> +
> +    # [build]
> +    config.add_section("build")
> +    config.set("build", "submodules", e(False))
> +    config.set("build", "docs", e(False))
> +
> +    rustc = d.expand("${WORKDIR}/rust-snapshot/bin/rustc")
> +    config.set("build", "rustc", e(rustc))
> +
> +    cargo = d.expand("${WORKDIR}/rust-snapshot/bin/cargo")
> +    config.set("build", "cargo", e(cargo))
> +
> +    config.set("build", "vendor", e(True))
> +
> +    targets = [d.getVar("TARGET_SYS", True)]
> +    config.set("build", "target", e(targets))
> +
> +    hosts = [d.getVar("SNAPSHOT_BUILD_SYS", True)]
> +    config.set("build", "host", e(hosts))
> +
> +    # We can't use BUILD_SYS since that is something the rust snapshot knows
> +    # nothing about when trying to build some stage0 tools (like fabricate)
> +    config.set("build", "build", e(d.getVar("SNAPSHOT_BUILD_SYS", True)))
> +
> +    with open("config.toml", "w") as f:
> +        config.write(f)
> +
> +    # set up ${WORKDIR}/cargo_home
> +    bb.build.exec_func("setup_cargo_environment", d)
> +}
> +
> +
> +rust_runx () {
> +    echo "COMPILE ${PN}" "$@"
> +
> +    # CFLAGS, LDFLAGS, CXXFLAGS, CPPFLAGS are used by rust's build for a
> +    # wide range of targets (not just TARGET). Yocto's settings for them will
> +    # be inappropriate, avoid using.
> +    unset CFLAGS
> +    unset LDFLAGS
> +    unset CXXFLAGS
> +    unset CPPFLAGS
> +
> +    oe_cargo_fix_env
> +
> +    python3 src/bootstrap/bootstrap.py ${@oe.utils.parallel_make_argument(d, '-j %d')} "$@" --verbose
> +}
> +rust_runx[vardepsexclude] += "PARALLEL_MAKE"
> +
> +do_compile () {
> +
> +    rust_runx build src/tools/remote-test-server --target "${TARGET_SYS}"
> +}
> -- 
> 2.31.1
> 

> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#156449): https://lists.openembedded.org/g/openembedded-core/message/156449
> Mute This Topic: https://lists.openembedded.org/mt/85943725/3617179
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com]
> -=-=-=-=-=-=-=-=-=-=-=-
> 


-- 
Alexandre Belloni, co-owner and COO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [OE-core] [PATCH v2 3/3] Rust oe-selftest file
  2021-09-29 22:59   ` [OE-core] " Alexandre Belloni
@ 2021-09-30  4:31     ` pgowda cve
  2021-10-05 16:13       ` Randy MacLeod
  0 siblings, 1 reply; 14+ messages in thread
From: pgowda cve @ 2021-09-30  4:31 UTC (permalink / raw)
  To: Alexandre Belloni
  Cc: openembedded-core, Richard Purdie, Randy MacLeod, alex.kanavin,
	umesh.kalappa0, Vinay Kumar

Hi Alexandre,

Thanks for mentioning it.

It's already been taken care of as the following patch:-
http://git.yoctoproject.org/cgit.cgi/poky/commit/?h=master-next&id=50f7a13e69e8987b3629d455f9f56720c376e89b

Thanks & Regards,
pgowda


On Thu, Sep 30, 2021 at 4:29 AM Alexandre Belloni
<alexandre.belloni@bootlin.com> wrote:
>
> Hello,
>
> On 29/09/2021 01:04:48-0700, Pgowda wrote:
> > Add file for rust oe-selftest
> >
> > Signed-off-by: Pgowda <pgowda.cve@gmail.com>
> > ---
> >  meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb | 3 +++
> >  1 file changed, 3 insertions(+)
> >  create mode 100644 meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb
> >
> > diff --git a/meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb b/meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb
> > new file mode 100644
> > index 0000000000..ad758b71f4
> > --- /dev/null
> > +++ b/meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb
> > @@ -0,0 +1,3 @@
> > +require rust-testsuite.inc
> > +require rust-source-${PV}.inc
> > +require rust-snapshot-${PV}.inc
>
> Unless I missed something, this is missing a maintainer entry:
>
> The following recipes do not have a maintainer assigned to them. Please add an entry to meta/conf/distro/include/maintainers.inc file.
> rust-testsuite (/home/pokybuild/yocto-worker/oe-selftest-centos/build/meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb)
>
> > --
> > 2.31.1
> >
>
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#156450): https://lists.openembedded.org/g/openembedded-core/message/156450
> > Mute This Topic: https://lists.openembedded.org/mt/85943726/3617179
> > Group Owner: openembedded-core+owner@lists.openembedded.org
> > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
>
>
> --
> Alexandre Belloni, co-owner and COO, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH v3] Re: [OE-core] [PATCH v2 2/3] Rust cross testing file
  2021-09-29 23:03   ` [OE-core] " Alexandre Belloni
@ 2021-09-30  7:27     ` Pgowda
       [not found]     ` <16A988E1BC842A91.3292@lists.openembedded.org>
  1 sibling, 0 replies; 14+ messages in thread
From: Pgowda @ 2021-09-30  7:27 UTC (permalink / raw)
  To: openembedded-core, alexandre.belloni
  Cc: richard.purdie, rwmacleod, alex.kanavin, umesh.kalappa0,
	vinay.m.engg, Pgowda

The attached patch sets "ninja = false" dependency during rust-testsuite
build and fixes the error.

Signed-off-by: Pgowda <pgowda.cve@gmail.com>
---
 meta/recipes-devtools/rust/rust-testsuite.inc | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-devtools/rust/rust-testsuite.inc b/meta/recipes-devtools/rust/rust-testsuite.inc
index 861c4ff504..0d399bd9e4 100644
--- a/meta/recipes-devtools/rust/rust-testsuite.inc
+++ b/meta/recipes-devtools/rust/rust-testsuite.inc
@@ -94,6 +94,7 @@ python do_configure() {
     # [llvm]
     config.add_section("llvm")
     config.set("llvm", "targets", e("ARM;AArch64;Mips;PowerPC;RISCV;X86"))
+    config.set("llvm", "ninja", e(False))
 
     # [rust]
     config.add_section("rust")
-- 
2.31.1



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [OE-core] [PATCH v2 3/3] Rust oe-selftest file
  2021-09-30  4:31     ` pgowda cve
@ 2021-10-05 16:13       ` Randy MacLeod
  2021-10-05 16:21         ` Alexandre Belloni
  0 siblings, 1 reply; 14+ messages in thread
From: Randy MacLeod @ 2021-10-05 16:13 UTC (permalink / raw)
  To: Pgowda, Alexandre Belloni
  Cc: openembedded-core, Richard Purdie, Randy MacLeod, alex.kanavin,
	umesh.kalappa0, Vinay Kumar

On 2021-09-30 12:31 a.m., Pgowda wrote:
> Hi Alexandre,
> 
> Thanks for mentioning it.
> 
> It's already been taken care of as the following patch:-
> http://git.yoctoproject.org/cgit.cgi/poky/commit/?h=master-next&id=50f7a13e69e8987b3629d455f9f56720c376e89b

Hi Naveen,

That link is for a commit in master-next that is no longer valid.
I guess you should send a v3.

../Randy

> 
> Thanks & Regards,
> pgowda
> 
> 
> On Thu, Sep 30, 2021 at 4:29 AM Alexandre Belloni
> <alexandre.belloni@bootlin.com> wrote:
>>
>> Hello,
>>
>> On 29/09/2021 01:04:48-0700, Pgowda wrote:
>>> Add file for rust oe-selftest
>>>
>>> Signed-off-by: Pgowda <pgowda.cve@gmail.com>
>>> ---
>>>   meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb | 3 +++
>>>   1 file changed, 3 insertions(+)
>>>   create mode 100644 meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb
>>>
>>> diff --git a/meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb b/meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb
>>> new file mode 100644
>>> index 0000000000..ad758b71f4
>>> --- /dev/null
>>> +++ b/meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb
>>> @@ -0,0 +1,3 @@
>>> +require rust-testsuite.inc
>>> +require rust-source-${PV}.inc
>>> +require rust-snapshot-${PV}.inc
>>
>> Unless I missed something, this is missing a maintainer entry:
>>
>> The following recipes do not have a maintainer assigned to them. Please add an entry to meta/conf/distro/include/maintainers.inc file.
>> rust-testsuite (/home/pokybuild/yocto-worker/oe-selftest-centos/build/meta/recipes-devtools/rust/rust-testsuite_1.54.0.bb)
>>
>>> --
>>> 2.31.1
>>>
>>
>>>
>>>
>>>
>>
>>
>> --
>> Alexandre Belloni, co-owner and COO, Bootlin
>> Embedded Linux and Kernel engineering
>> https://bootlin.com
>>
>>
>> -=-=-=-=-=-=-=-=-=-=-=-
>> Links: You receive all messages sent to this group.
>> View/Reply Online (#156480): https://lists.openembedded.org/g/openembedded-core/message/156480
>> Mute This Topic: https://lists.openembedded.org/mt/85943726/3616765
>> Group Owner: openembedded-core+owner@lists.openembedded.org
>> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [randy.macleod@windriver.com]
>> -=-=-=-=-=-=-=-=-=-=-=-
>>


-- 
# Randy MacLeod
# Wind River Linux



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [OE-core] [PATCH v2 3/3] Rust oe-selftest file
  2021-10-05 16:13       ` Randy MacLeod
@ 2021-10-05 16:21         ` Alexandre Belloni
  0 siblings, 0 replies; 14+ messages in thread
From: Alexandre Belloni @ 2021-10-05 16:21 UTC (permalink / raw)
  To: Randy MacLeod
  Cc: Pgowda, openembedded-core, Richard Purdie, Randy MacLeod,
	alex.kanavin, umesh.kalappa0, Vinay Kumar

On 05/10/2021 12:13:56-0400, Randy MacLeod wrote:
> On 2021-09-30 12:31 a.m., Pgowda wrote:
> > Hi Alexandre,
> > 
> > Thanks for mentioning it.
> > 
> > It's already been taken care of as the following patch:-
> > http://git.yoctoproject.org/cgit.cgi/poky/commit/?h=master-next&id=50f7a13e69e8987b3629d455f9f56720c376e89b
> 
> Hi Naveen,
> 
> That link is for a commit in master-next that is no longer valid.
> I guess you should send a v3.
> 

That's fine, I'm also carrying the patch in kirkstone-next now


-- 
Alexandre Belloni, co-owner and COO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [OE-core] [PATCH v2 1/3] Rust oe-selftest script
  2021-09-29  8:04 [PATCH v2 1/3] Rust oe-selftest script Pgowda
  2021-09-29  8:04 ` [PATCH v2 2/3] Rust cross testing file Pgowda
  2021-09-29  8:04 ` [PATCH v2 3/3] Rust oe-selftest file Pgowda
@ 2021-10-05 18:19 ` Alexandre Belloni
  2 siblings, 0 replies; 14+ messages in thread
From: Alexandre Belloni @ 2021-10-05 18:19 UTC (permalink / raw)
  To: Pgowda
  Cc: openembedded-core, richard.purdie, rwmacleod, alex.kanavin,
	umesh.kalappa0, vinay.m.engg

Hello,

I got the following (cryptic) failures today:

https://autobuilder.yoctoproject.org/typhoon/#/builders/59/builds/4100/steps/18/logs/stdio

https://autobuilder.yoctoproject.org/typhoon/#/builders/73/builds/4094/steps/18/logs/stdio


On 29/09/2021 01:04:46-0700, Pgowda wrote:
> The file builds remote-test-server and executes rust testing
> remotely using background ssh. It adds the necessary test environment
> and variables to run the rust oe-selftest.
> 
> Print the results in case of failure of runCmd().
> 
> Signed-off-by: Pgowda <pgowda.cve@gmail.com>
> ---
>  meta/lib/oeqa/selftest/cases/rust.py | 53 ++++++++++++++++++++++++++++
>  1 file changed, 53 insertions(+)
>  create mode 100644 meta/lib/oeqa/selftest/cases/rust.py
> 
> diff --git a/meta/lib/oeqa/selftest/cases/rust.py b/meta/lib/oeqa/selftest/cases/rust.py
> new file mode 100644
> index 0000000000..7978758221
> --- /dev/null
> +++ b/meta/lib/oeqa/selftest/cases/rust.py
> @@ -0,0 +1,53 @@
> +# SPDX-License-Identifier: MIT
> +import os
> +import subprocess
> +from oeqa.core.decorator import OETestTag
> +from oeqa.core.case import OEPTestResultTestCase
> +from oeqa.selftest.case import OESelftestTestCase
> +from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_bb_vars, runqemu, Command
> +from oeqa.utils.sshcontrol import SSHControl
> +
> +# Total time taken for testing is of about 2hr 20min, with PARALLEL_MAKE set to 40 number of jobs.
> +class RustSelfTestBase(OESelftestTestCase, OEPTestResultTestCase):
> +
> +	def run_check_emulated(self, *args, **kwargs):
> +		# build remote-test-server before image build
> +		recipe = "rust-testsuite"
> +		bitbake("{} -c compile".format(recipe))
> +		builddir = get_bb_var("B", "rust-testsuite")
> +		# build core-image-minimal with required packages
> +		default_installed_packages = ["libgcc", "libstdc++", "libatomic", "libgomp"]
> +		features = []
> +		features.append('IMAGE_FEATURES += "ssh-server-openssh"')
> +		features.append('CORE_IMAGE_EXTRA_INSTALL += "{0}"'.format(" ".join(default_installed_packages)))
> +		self.write_config("\n".join(features))
> +		bitbake("core-image-minimal")
> +		# wrap the execution with a qemu instance
> +		with runqemu("core-image-minimal", runqemuparams = "nographic", qemuparams = "-m 512") as qemu:
> +			# Copy remote-test-server to image through scp
> +			ssh = SSHControl(ip=qemu.ip, logfile=qemu.sshlog, user="root")
> +			ssh.copy_to(builddir + "/" + "build/x86_64-unknown-linux-gnu/stage1-tools-bin/remote-test-server","~/")
> +			# Execute remote-test-server on image through background ssh
> +			command = '~/remote-test-server -v remote'
> +			sshrun=subprocess.Popen(("ssh", '-o',  'UserKnownHostsFile=/dev/null', '-o',  'StrictHostKeyChecking=no', '-f', "root@%s" % qemu.ip, command),
> +                                shell=False,
> +                                stdout=subprocess.PIPE,
> +                                stderr=subprocess.PIPE)
> +			# Get the values of variables.
> +			targetsys = get_bb_var("TARGET_SYS", "rust-testsuite")
> +			rustlibpath = get_bb_var("STAGING_LIBDIR_NATIVE", "rust-testsuite")
> +			tmpdir = get_bb_var("TMPDIR", "rust-testsuite")
> +			testargs = "--no-fail-fast --bless"
> +			# Set path for target-poky-linux-gcc, RUST_TARGET_PATH and hosttools.
> +			cmd = " export PATH=%s/../bin:$PATH;" % rustlibpath
> +			cmd = cmd + " export PATH=%s/../bin/%s:%s/hosttools:$PATH;" % (rustlibpath, targetsys, tmpdir)
> +			cmd = cmd + " export RUST_TARGET_PATH=%s/rustlib;" % rustlibpath
> +			# Trigger testing.
> +			cmd = cmd + " export TEST_DEVICE_ADDR=\"%s:12345\";" % qemu.ip
> +			cmd = cmd + " cd %s;  python3 src/bootstrap/bootstrap.py test %s --target %s ;" % (builddir, testargs, targetsys)
> +			result = runCmd(cmd)
> +
> +@OETestTag("toolchain-system")
> +class RustSelfTestSystemEmulated(RustSelfTestBase):
> +	def test_rust(self):
> +		self.run_check_emulated("rust")
> -- 
> 2.31.1
> 

> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#156448): https://lists.openembedded.org/g/openembedded-core/message/156448
> Mute This Topic: https://lists.openembedded.org/mt/85943724/3617179
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com]
> -=-=-=-=-=-=-=-=-=-=-=-
> 


-- 
Alexandre Belloni, co-owner and COO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v3] Re: [OE-core] [PATCH v2 2/3] Rust cross testing file
       [not found]     ` <16A988E1BC842A91.3292@lists.openembedded.org>
@ 2021-10-20  7:08       ` pgowda cve
  2021-10-20  7:42         ` Alexandre Belloni
  0 siblings, 1 reply; 14+ messages in thread
From: pgowda cve @ 2021-10-20  7:08 UTC (permalink / raw)
  To: PGowda
  Cc: openembedded-core, Alexandre Belloni, Richard Purdie,
	Randy MacLeod, alex.kanavin, umesh.kalappa0, Vinay Kumar

Hi,

Gentle ping on this patch set.

Thanks,
pgowda


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v3] Re: [OE-core] [PATCH v2 2/3] Rust cross testing file
  2021-10-20  7:08       ` pgowda cve
@ 2021-10-20  7:42         ` Alexandre Belloni
  2021-11-02  5:12           ` pgowda cve
  0 siblings, 1 reply; 14+ messages in thread
From: Alexandre Belloni @ 2021-10-20  7:42 UTC (permalink / raw)
  To: pgowda cve
  Cc: openembedded-core, Richard Purdie, Randy MacLeod, alex.kanavin,
	umesh.kalappa0, Vinay Kumar

On 20/10/2021 12:38:54+0530, pgowda cve wrote:
> Hi,
> 
> Gentle ping on this patch set.

There are still issues with that series and I replied the following a
while ago:

https://lists.openembedded.org/g/openembedded-core/message/156655


"I got the following (cryptic) failures today:

https://autobuilder.yoctoproject.org/typhoon/#/builders/59/builds/4100/steps/18/logs/stdio

https://autobuilder.yoctoproject.org/typhoon/#/builders/73/builds/4094/steps/18/logs/stdio"

-- 
Alexandre Belloni, co-owner and COO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v3] Re: [OE-core] [PATCH v2 2/3] Rust cross testing file
  2021-10-20  7:42         ` Alexandre Belloni
@ 2021-11-02  5:12           ` pgowda cve
  2021-11-26 18:34             ` Randy MacLeod
  0 siblings, 1 reply; 14+ messages in thread
From: pgowda cve @ 2021-11-02  5:12 UTC (permalink / raw)
  To: Alexandre Belloni
  Cc: openembedded-core, Richard Purdie, Randy MacLeod, alex.kanavin,
	umesh.kalappa0, Vinay Kumar

Hi Alexandre,

>> There are still issues with that series and I replied the following a
>> https://lists.openembedded.org/g/openembedded-core/message/156655

I had a detailed investigation on the cryptic errors which was
mentioned in the build.
Those are the tests that are supposed to FAIL in the rust testsuite.
The current patch provides the framework to run the rust testsuite
from rust sources.
It does not modify the test case or results and hence is unable to
deal with failures
from rust source.

Hence, we see the final message as "command failed" at the end of testsuite run
due to some test case failures from rust source.
Can you please let me know how to deal with this?
Is there a way we can provide these failures as expected or ignore them?

Thanks,
Pgowda


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v3] Re: [OE-core] [PATCH v2 2/3] Rust cross testing file
  2021-11-02  5:12           ` pgowda cve
@ 2021-11-26 18:34             ` Randy MacLeod
  0 siblings, 0 replies; 14+ messages in thread
From: Randy MacLeod @ 2021-11-26 18:34 UTC (permalink / raw)
  To: Pgowda, Alexandre Belloni
  Cc: openembedded-core, Richard Purdie, Randy MacLeod, alex.kanavin,
	umesh.kalappa0, Vinay Kumar

On 2021-11-02 1:12 a.m., Pgowda wrote:
> Hi Alexandre,
> 
>>> There are still issues with that series and I replied the following a
>>> https://lists.openembedded.org/g/openembedded-core/message/156655
> 
> I had a detailed investigation on the cryptic errors which was
> mentioned in the build.
> Those are the tests that are supposed to FAIL in the rust testsuite.

Ah, that's good to know.

> The current patch provides the framework to run the rust testsuite
> from rust sources.
> It does not modify the test case or results and hence is unable to
> deal with failures
> from rust source.
> 
> Hence, we see the final message as "command failed" at the end of testsuite run
> due to some test case failures from rust source.
> Can you please let me know how to deal with this?

In Yocto, we want the return status to indicate only that we were
able to _try_ to run all the tests. If some tests fail that's acceptable.
We need to know what the result was and we'll monitor it to ensure that
the number of failed tests does not increase.


> Is there a way we can provide these failures as expected or ignore them?

I think this problem is rust specific so you'd have to deal with it in
your patch. Maybe someone can point out another case that is similar to
this one but I don't know of one offhand.


../Randy

> 
> Thanks,
> Pgowda
> 
> 
> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#157736): https://lists.openembedded.org/g/openembedded-core/message/157736
> Mute This Topic: https://lists.openembedded.org/mt/86459542/3616765
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [randy.macleod@windriver.com]
> -=-=-=-=-=-=-=-=-=-=-=-
> 


-- 
# Randy MacLeod
# Wind River Linux



^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2021-11-26 18:34 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-29  8:04 [PATCH v2 1/3] Rust oe-selftest script Pgowda
2021-09-29  8:04 ` [PATCH v2 2/3] Rust cross testing file Pgowda
2021-09-29 23:03   ` [OE-core] " Alexandre Belloni
2021-09-30  7:27     ` [PATCH v3] " Pgowda
     [not found]     ` <16A988E1BC842A91.3292@lists.openembedded.org>
2021-10-20  7:08       ` pgowda cve
2021-10-20  7:42         ` Alexandre Belloni
2021-11-02  5:12           ` pgowda cve
2021-11-26 18:34             ` Randy MacLeod
2021-09-29  8:04 ` [PATCH v2 3/3] Rust oe-selftest file Pgowda
2021-09-29 22:59   ` [OE-core] " Alexandre Belloni
2021-09-30  4:31     ` pgowda cve
2021-10-05 16:13       ` Randy MacLeod
2021-10-05 16:21         ` Alexandre Belloni
2021-10-05 18:19 ` [OE-core] [PATCH v2 1/3] Rust oe-selftest script Alexandre Belloni

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.