plugins/api: split out binary path/start/end/entry code

To move the main api.c to a single build compilation object we need to
start splitting out user and system specific code. As we need to grob
around host headers we move these particular helpers into the *-user
mode directories.

The binary/start/end/entry helpers are all NOPs for system mode.

While using the plugin-api.c.inc trick means we build for both
linux-user and bsd-user the BSD user-mode command line is still
missing -plugin. This can be enabled once we have reliable check-tcg
tests working for the BSDs.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Warner Losh <imp@bsdimp.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20250304222439.2035603-27-alex.bennee@linaro.org>
This commit is contained in:
Alex Bennée 2025-03-04 22:24:33 +00:00
parent 8c15f6e435
commit 903e870f24
8 changed files with 115 additions and 44 deletions

15
bsd-user/plugin-api.c Normal file
View file

@ -0,0 +1,15 @@
/*
* QEMU Plugin API - bsd-user-mode only implementations
*
* Common user-mode only APIs are in plugins/api-user. These helpers
* are only specific to bsd-user.
*
* Copyright (C) 2017, Emilio G. Cota <cota@braap.org>
* Copyright (C) 2019-2025, Linaro
*
* SPDX-License-Identifier: GPL-2.0-or-later
*/
#include "qemu/osdep.h"
#include "qemu.h"
#include "common-user/plugin-api.c.inc"