This change has two benefits: - ensure plugins can't include anything else from QEMU than plugins API - when compiling a C++ module, solves the header conflict with iostream header that includes transitively the wrong ctype.h, which already exists in include/qemu.
By Hyrum's law, there was already one usage of other headers with mem plugin, which has been eliminated in previous commit. Signed-off-by: Pierrick Bouvier <[email protected]> --- docs/devel/tcg-plugins.rst | 4 ++-- meson.build | 2 +- include/{qemu => plugins}/qemu-plugin.h | 3 --- include/qemu/plugin.h | 2 +- plugins/core.c | 2 +- plugins/meson.build | 6 +++--- scripts/clean-includes | 2 +- 7 files changed, 9 insertions(+), 12 deletions(-) rename include/{qemu => plugins}/qemu-plugin.h (99%) diff --git a/docs/devel/tcg-plugins.rst b/docs/devel/tcg-plugins.rst index 9463692c411..f48c32bd844 100644 --- a/docs/devel/tcg-plugins.rst +++ b/docs/devel/tcg-plugins.rst @@ -166,7 +166,7 @@ Plugin API ========== The following API is generated from the inline documentation in -``include/qemu/qemu-plugin.h``. Please ensure any updates to the API +``include/plugins/qemu-plugin.h``. Please ensure any updates to the API include the full kernel-doc annotations. -.. kernel-doc:: include/qemu/qemu-plugin.h +.. kernel-doc:: include/plugins/qemu-plugin.h diff --git a/meson.build b/meson.build index 3d6c6c702d0..a8fd8e88225 100644 --- a/meson.build +++ b/meson.build @@ -4495,7 +4495,7 @@ endforeach # Other build targets if get_option('plugins') - install_headers('include/qemu/qemu-plugin.h') + install_headers('include/plugins/qemu-plugin.h') if host_os == 'windows' # On windows, we want to deliver the qemu_plugin_api.lib file in the qemu installer, # so that plugin authors can compile against it. diff --git a/include/qemu/qemu-plugin.h b/include/plugins/qemu-plugin.h similarity index 99% rename from include/qemu/qemu-plugin.h rename to include/plugins/qemu-plugin.h index e44f863d839..78872716246 100644 --- a/include/qemu/qemu-plugin.h +++ b/include/plugins/qemu-plugin.h @@ -2,9 +2,6 @@ * Copyright (C) 2017, Emilio G. Cota <[email protected]> * Copyright (C) 2019, Linaro * - * License: GNU GPL, version 2 or later. - * See the COPYING file in the top-level directory. - * * SPDX-License-Identifier: GPL-2.0-or-later */ diff --git a/include/qemu/plugin.h b/include/qemu/plugin.h index cea0a68858b..cdd4f68c0c1 100644 --- a/include/qemu/plugin.h +++ b/include/qemu/plugin.h @@ -8,7 +8,7 @@ #define QEMU_PLUGIN_H #include "qemu/config-file.h" -#include "qemu/qemu-plugin.h" +#include "plugins/qemu-plugin.h" #include "qemu/error-report.h" #include "qemu/queue.h" #include "qemu/option.h" diff --git a/plugins/core.c b/plugins/core.c index b4b783008f7..3f66533d749 100644 --- a/plugins/core.c +++ b/plugins/core.c @@ -15,7 +15,7 @@ #include "qemu/lockable.h" #include "qemu/option.h" #include "qemu/plugin.h" -#include "qemu/qemu-plugin.h" +#include "plugins/qemu-plugin.h" #include "qemu/queue.h" #include "qemu/rcu_queue.h" #include "qemu/rcu.h" diff --git a/plugins/meson.build b/plugins/meson.build index 4318e3a1671..34643e2cea3 100644 --- a/plugins/meson.build +++ b/plugins/meson.build @@ -3,7 +3,7 @@ if not get_option('plugins') endif qemu_plugin_symbols = configure_file( - input: files('../include/qemu/qemu-plugin.h'), + input: files('../include/plugins/qemu-plugin.h'), output: 'qemu-plugin.symbols', capture: true, command: [files('../scripts/qemu-plugin-symbols.py'), '@INPUT@']) @@ -62,12 +62,12 @@ endif if host_os == 'windows' plugins_deps = declare_dependency(sources: [files('win32_linker.c')], - include_directories: '../include/qemu', + include_directories: '../include/plugins', link_with: win32_qemu_plugin_api_lib, link_args: win32_qemu_plugin_api_link_flags, dependencies: glib) else - plugins_deps = declare_dependency(include_directories: '../include/qemu', + plugins_deps = declare_dependency(include_directories: '../include/plugins', dependencies: glib) endif diff --git a/scripts/clean-includes b/scripts/clean-includes index 25dbf16c021..3fae8e00e67 100755 --- a/scripts/clean-includes +++ b/scripts/clean-includes @@ -128,7 +128,7 @@ for f in "$@"; do ;; *include/qemu/osdep.h | \ *include/qemu/compiler.h | \ - *include/qemu/qemu-plugin.h | \ + *include/plugins/qemu-plugin.h | \ *include/glib-compat.h | \ *include/system/os-posix.h | \ *include/system/os-win32.h | \ -- 2.47.3
