mbox series

[00/15] devtool ide-sdk: support booting from NFS, VSCode clangd

Message ID 20260909215337.89106-1-adrian.freihofer@siemens.com
Headers show
Series devtool ide-sdk: support booting from NFS, VSCode clangd | expand

Message

AdrianF Sept. 9, 2026, 9:53 p.m. UTC
From: Adrian Freihofer <adrian.freihofer@siemens.com>

devtool ide-sdk: support booting the debug rootfs over NFS, plus VSCode
clangd integration (IntelliSense, non-clang toolchain support, and
.clang-format-aware formatting).

This series includes some commits already sent before, now reworked
with independent ordering: first extract_sdk_rootfs() is implemented
standalone, then runqemu-extract-sdk is rewritten in Python, and
finally the new pseudo_rootfs_utils Python module is shared between
runqemu-extract-sdk and devtool ide-sdk. This step-by-step split makes
the Python rewrite optionally pickable on its own, independent of the
NFS features.

Adrian Freihofer (15):
  devtool: deploy: split ssh deployment into a separate function
  devtool: deploy: allow deploying directly into a local rootfs
    directory
  oe-selftest: devtool deploy-target: test deploying into a local rootfs
    path
  devtool: ide-sdk: support NFS rootfs
  oe-selftest: devtool ide-sdk: test NFS debug rootfs
  runqemu-extract-sdk: refactor in Python
  devtool: ide-sdk: reuse pseudo_rootfs_utils for SDK rootfs extraction
  cpp-example: update formatting and code style
  cpp-example: fix clang-tidy warnings
  devtool: ide-sdk: add clangd support for VSCode IntelliSense
  devtool: ide-sdk: support clangd for non-clang toolchain recipes
  devtool: ide-sdk: format C/C++ with clangd when .clang-format is
    present
  devtool: ide-sdk: support LLDB ATTACH mode
  devtool: ide-sdk: pin BBPATH in generated do_install script
  buildstats: close proc/disk log files via weakref.finalize safety net

 .../recipes-test/cpp/cpp-example.inc          |   2 +
 .../recipes-test/cpp/files/.clang-format      |  42 +++
 .../recipes-test/cpp/files/.clang-tidy        |  33 ++
 .../cpp/files/cpp-example-lib.hpp             |   3 +-
 .../recipes-test/cpp/files/cpp-example.cpp    |   5 +-
 .../recipes-test/cpp/files/daemonize.cpp      |   2 +-
 .../recipes-test/cpp/files/daemonize.hpp      |   2 +-
 .../cpp/files/test-cpp-example.cpp            |  13 +-
 meta/lib/oe/buildstats.py                     |  15 +-
 meta/lib/oeqa/selftest/cases/devtool.py       | 320 +++++++++++++++++-
 .../qemu/nativesdk-qemu-helper_1.0.bb         |   3 +
 scripts/lib/devtool/__init__.py               |  22 +-
 scripts/lib/devtool/deploy.py                 | 220 ++++++++++--
 scripts/lib/devtool/ide_plugins/__init__.py   |  79 +++--
 scripts/lib/devtool/ide_plugins/ide_code.py   | 108 ++++--
 scripts/lib/devtool/ide_plugins/ide_none.py   |  17 +-
 scripts/lib/devtool/ide_sdk.py                | 275 ++++++++++++++-
 scripts/lib/pseudo_rootfs_utils.py            | 113 +++++++
 scripts/runqemu-extract-sdk                   | 116 ++-----
 19 files changed, 1156 insertions(+), 234 deletions(-)
 create mode 100644 meta-selftest/recipes-test/cpp/files/.clang-format
 create mode 100644 meta-selftest/recipes-test/cpp/files/.clang-tidy
 create mode 100644 scripts/lib/pseudo_rootfs_utils.py