Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH 00/20] devtool: ide-sdk: add support for Rust recipes
@ 2026-10-26  8:55 Enguerrand de Ribaucourt
  2026-10-26  8:55 ` [PATCH 01/20] cargo-example: add minimal selftest fixture Enguerrand de Ribaucourt
                   ` (20 more replies)
  0 siblings, 21 replies; 31+ messages in thread
From: Enguerrand de Ribaucourt @ 2026-10-26  8:55 UTC (permalink / raw)
  To: openembedded-core; +Cc: Adrian Freihofer, Enguerrand de Ribaucourt

Hello, this series introduces support for Rust ide-sdk VS Code configuration
against the Yocto cross-compilation toolchain:

 - editor symbol resolution and linting
 - build task
 - deploy task
 - debuging

It introduces a cargo-example recipe, on the model we have for cmake or meson.

The generated configurations can be portable to standalone SDK installations,
by manually updating the paths.

I reproduced the selftest coverage that is expected from other recipe classes,
including configuration analysis up to actual debuging symbol resolution.

I largely used AI generation to write this stack. After many iterations, I am
finally happy with the code and commit history quality of this series.
I also have a documentation commit at the ready for the manual if this gets
aproved.

Any feedback is appreciated. Hope this will help lots of Rust developers
working with Yocto distros :).

Cheers,
Enguerrand de Ribaucourt

Signed-off-by: Enguerrand de Ribaucourt <enguerrand.de-ribaucourt@savoirfairelinux.com>
---
Enguerrand de Ribaucourt (20):
      cargo-example: add minimal selftest fixture
      devtool: ide-sdk: capture Cargo cross environment
      devtool: ide-sdk: export recipe Cargo configuration
      devtool: ide-sdk: recommend Rust Analyzer for Cargo
      devtool: ide-sdk: configure Rust Analyzer for Cargo
      devtool: ide-sdk: share IntelliSense architecture mapping
      devtool: ide-sdk: configure Cargo C++ IntelliSense
      devtool: ide-sdk: generalize binary install task name
      devtool: ide-sdk: extract install task definition
      devtool: ide-sdk: order install after optional build task
      devtool: ide-sdk: add Cargo build task
      devtool: ide-sdk: enforce LLDB for Cargo
      devtool: ide-sdk: parse Rust debug path remaps
      devtool: ide-sdk: remap Cargo sources for BitBake builds
      devtool: ide-sdk: map Cargo workspace sources for LLDB
      devtool: ide-sdk: map libstd-rs sources to Rust SDK
      oeqa/selftest: share source breakpoint lookup
      oeqa/selftest: run IDE tasks with configured environment
      oeqa/selftest: debug Cargo example over QEMU slirp
      oeqa/selftest: verify Cargo rebuild and redeploy

 meta-selftest/recipes-test/rust/cargo-example.bb   |  15 +
 .../recipes-test/rust/cargo-example/Cargo.lock     |   5 +
 .../recipes-test/rust/cargo-example/Cargo.toml     |   8 +
 .../recipes-test/rust/cargo-example/build.rs       |  20 ++
 .../recipes-test/rust/cargo-example/src/main.rs    |  11 +
 meta/lib/oeqa/selftest/cases/devtool.py            | 310 +++++++++++++++++++--
 scripts/lib/devtool/ide_plugins/__init__.py        |   1 +
 scripts/lib/devtool/ide_plugins/ide_code.py        | 125 +++++++--
 scripts/lib/devtool/ide_sdk.py                     | 247 ++++++++++++++--
 9 files changed, 673 insertions(+), 69 deletions(-)
---
base-commit: 39b27e524f3c092e5018cbed23ddf1829390ae65
change-id: 20261022-devtool-ide-sdk-cargo-d003158ae2f1

Best regards,
--  
Enguerrand de Ribaucourt <enguerrand.de-ribaucourt@savoirfairelinux.com>


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

end of thread, other threads:[~2026-10-28 23:30 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-26  8:55 [PATCH 00/20] devtool: ide-sdk: add support for Rust recipes Enguerrand de Ribaucourt
2026-10-26  8:55 ` [PATCH 01/20] cargo-example: add minimal selftest fixture Enguerrand de Ribaucourt
2026-10-26  8:55 ` [PATCH 02/20] devtool: ide-sdk: capture Cargo cross environment Enguerrand de Ribaucourt
2026-10-26  8:55 ` [PATCH 03/20] devtool: ide-sdk: export recipe Cargo configuration Enguerrand de Ribaucourt
2026-10-28 22:40   ` [OE-core] " adrian.freihofer
2026-10-26  8:55 ` [PATCH 04/20] devtool: ide-sdk: recommend Rust Analyzer for Cargo Enguerrand de Ribaucourt
2026-10-28 22:48   ` [OE-core] " adrian.freihofer
2026-10-26  8:55 ` [PATCH 05/20] devtool: ide-sdk: configure " Enguerrand de Ribaucourt
2026-10-26  8:55 ` [PATCH 06/20] devtool: ide-sdk: share IntelliSense architecture mapping Enguerrand de Ribaucourt
2026-10-26  8:55 ` [PATCH 07/20] devtool: ide-sdk: configure Cargo C++ IntelliSense Enguerrand de Ribaucourt
2026-10-28 22:59   ` [OE-core] " adrian.freihofer
2026-10-26  8:55 ` [PATCH 08/20] devtool: ide-sdk: generalize binary install task name Enguerrand de Ribaucourt
2026-10-26  8:55 ` [PATCH 09/20] devtool: ide-sdk: extract install task definition Enguerrand de Ribaucourt
2026-10-26  8:55 ` [PATCH 10/20] devtool: ide-sdk: order install after optional build task Enguerrand de Ribaucourt
2026-10-28 23:01   ` [OE-core] " adrian.freihofer
2026-10-26  8:55 ` [PATCH 11/20] devtool: ide-sdk: add Cargo " Enguerrand de Ribaucourt
2026-10-28 23:04   ` [OE-core] " adrian.freihofer
2026-10-26  8:55 ` [PATCH 12/20] devtool: ide-sdk: enforce LLDB for Cargo Enguerrand de Ribaucourt
2026-10-28 23:08   ` [OE-core] " adrian.freihofer
2026-10-26  8:55 ` [PATCH 13/20] devtool: ide-sdk: parse Rust debug path remaps Enguerrand de Ribaucourt
2026-10-28 23:16   ` [OE-core] " adrian.freihofer
2026-10-26  8:55 ` [PATCH 14/20] devtool: ide-sdk: remap Cargo sources for BitBake builds Enguerrand de Ribaucourt
2026-10-28 23:28   ` [OE-core] " adrian.freihofer
2026-10-26  8:55 ` [PATCH 15/20] devtool: ide-sdk: map Cargo workspace sources for LLDB Enguerrand de Ribaucourt
2026-10-26  8:55 ` [PATCH 16/20] devtool: ide-sdk: map libstd-rs sources to Rust SDK Enguerrand de Ribaucourt
2026-10-28 23:23   ` [OE-core] " adrian.freihofer
2026-10-26  8:55 ` [PATCH 17/20] oeqa/selftest: share source breakpoint lookup Enguerrand de Ribaucourt
2026-10-26  8:55 ` [PATCH 18/20] oeqa/selftest: run IDE tasks with configured environment Enguerrand de Ribaucourt
2026-10-26  8:55 ` [PATCH 19/20] oeqa/selftest: debug Cargo example over QEMU slirp Enguerrand de Ribaucourt
2026-10-26  8:55 ` [PATCH 20/20] oeqa/selftest: verify Cargo rebuild and redeploy Enguerrand de Ribaucourt
2026-10-28 23:30 ` [OE-core] [PATCH 00/20] devtool: ide-sdk: add support for Rust recipes adrian.freihofer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox