mbox series

[00/10] plugins: reduce total number of build objects

Message ID 20250225110844.3296991-1-alex.bennee@linaro.org
Headers show
Series plugins: reduce total number of build objects | expand

Message

Alex Bennée Feb. 25, 2025, 11:08 a.m. UTC
As we move towards a more modular build this series converts both
loader and api to build once objects. For both objects the only real
difference is between user mode and system emulation so those bits
have been hived off into those source sets.

The remaining core plugin is more intimately aligned with the TCG
backend so requires definitions like TCG_TARGET_LONG. Hopefully this
can been cleaned up once Richards TCG rationalisation code is added.

Please review.

Alex.

Alex Bennée (10):
  plugins/api: use tcg_ctx to get TARGET_PAGE_MASK
  plugins/loader: populate target_name with target_name()
  include/qemu: plugin-memory.h doesn't need cpu-defs.h
  plugins/api: clean-up the includes
  plugins/plugin.h: include queue.h
  plugins/loader: compile loader only once
  plugins/api: split out binary path/start/end/entry code
  plugins/api: split out the vaddr/hwaddr helpers
  plugins/api: split out time control helpers
  plugins/api: build only once

 include/qemu/plugin-memory.h |   1 -
 plugins/plugin.h             |   7 ++
 linux-user/plugin-api.c      |  43 +++++++++
 plugins/api-system.c         | 131 +++++++++++++++++++++++++++
 plugins/api-user.c           |  57 ++++++++++++
 plugins/api.c                | 170 +----------------------------------
 plugins/loader.c             |  15 +---
 plugins/system.c             |  24 +++++
 plugins/user.c               |  19 ++++
 linux-user/meson.build       |   1 +
 plugins/meson.build          |   8 +-
 11 files changed, 292 insertions(+), 184 deletions(-)
 create mode 100644 linux-user/plugin-api.c
 create mode 100644 plugins/api-system.c
 create mode 100644 plugins/api-user.c
 create mode 100644 plugins/system.c
 create mode 100644 plugins/user.c