qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 0/6] build contrib/plugins using meson


From: Pierrick Bouvier
Subject: Re: [PATCH 0/6] build contrib/plugins using meson
Date: Fri, 16 Aug 2024 11:44:56 -0700
User-agent: Mozilla Thunderbird

I don't have strong opinion in the end, I'm just looking for building contrib plugins like the rest of the codebase, to reduce maintenance burden.

Initially, when this idea was implemented, it was suggested by Alex to remove the Makefile [1]. Now it seems to be suggested to keep it as an example. So I'll let you decide what's the best, I'll follow that.

[1] https://lore.kernel.org/qemu-devel/20230615141315.961315-1-anton.kochkov@proton.me/T/#m2237fb20b9a53bd2ddec221831692090cda14c6f

On 8/15/24 23:50, Philippe Mathieu-Daudé wrote:
On 15/8/24 20:04, Pierrick Bouvier wrote:
On 8/14/24 23:00, Paolo Bonzini wrote:
On Thu, Aug 15, 2024 at 1:37 AM Pierrick Bouvier
<pierrick.bouvier@linaro.org> wrote:
Contrib plugins have been built out of tree so far, thanks to a
Makefile.
However, it is quite inconvenient for maintenance, as we may break them,
especially for specific architectures.

First patches are fixing warnings for existing plugins, then we add
meson
support, and finally, we remove Makefile for contrib/plugins.

Based on the proposal of Anton Kochkov on associated gitlab issue.
Solves: https://gitlab.com/qemu-project/qemu/-/issues/1710

Is the bug actually still there?


Maybe the changes you did fixed the portability issue. I just added this
"solves" because it's where the idea to compile with meson was presented
initially.

The Makefile explains why it was done this way:

# This Makefile example is fairly independent from the main makefile
# so users can take and adapt it for their build. We only really
# include config-host.mak so we don't have to repeat probing for
# programs that the main configure has already done for us.

In other words we should also take into account that there is a
documentation benefit to having a Makefile that works across Windows,
Darwin and generic ELF Unices. Anyway Philippe, Akihiko and Alex are
the best people to decide.
  > One argument from moving contrib/plugins to meson is that the Windows
case depends on libqemu_plugin_api.a which is built with meson(*);
that said, libqemu_plugin_api.a should be installed - which would
justify it being used from an "external" makefile.


You need meson to build this lib in the first place, so I guess that
99.9% of the people writing a plugin will have a qemu source tree (with
access to plugin headers), and first compile the lib.

I am not convinced by the scenario where people build this out of tree
to be honest, but I may be wrong.

Consider users interested to use plugins (not really develop them).
They should be able to build the plugins with their distrib QEMU,
not cloning the whole git tree. (At least this is how I understood
when Alex explained me the plugins power and simplicity for users.)

reply via email to

[Prev in Thread] Current Thread [Next in Thread]