qemu-devel
[Top][All Lists]
Advanced

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

Re: QEMU System and User targets


From: Kenneth Adam Miller
Subject: Re: QEMU System and User targets
Date: Fri, 16 Jul 2021 12:50:38 -0500

There's a lot of files and I don't want to muddy up the discussion with too many details.

And for sure, this is not a problem with the upstream qemu. I'm working on adding a target, and this is just what I'm experiencing. As for my target, it has includes that correspond to finds within sub-directories of qemu components, and I just mean that the include directives are only the file name (no path prefix), but such file can be found only in folders other than the include directory. One example is qemu.h; it is in linux-user. You can get the compilation to find exactly just that file, but it includes other files, and it isn't reasonable to edit anything outside of my own architecture implementation. I'm wondering if perhaps anything that makes an include to linux-user would need to be moved into the user target source set, because currently it is in the shared.

On Fri, Jul 16, 2021 at 10:38 AM Peter Maydell <peter.maydell@linaro.org> wrote:
On Fri, 16 Jul 2021 at 16:16, Kenneth Adam Miller
<kennethadammiller@gmail.com> wrote:
>
> When I go to build the qemu softmmu target the shared files - the i386_ss of my arch - gives problems where the build system isn't specifying the include headers for the compiler to find the surrounding headers that belong to different parts of the qemu library. I was able to edit my own source only so much before recursive header dependencies had included their own respective qemu library components subdirectories, at which point the build fails with cannot find header. I want to know, are these shared source set files not supposed to include those qemu subcomponents? Or resolve a different way for each target using #ifdef guards? I would think that this would be modularized from within the qemu subcomponent library. And I think that configure and meson are working together to generate the correct build commands to these shared components. So I'm unsure what to do.

Upstream QEMU builds fine for me, so you'll need to be more
specific about what you're trying to do and how it fails.
The top level meson.build always includes the current source
directory and the top level include/ directory on the compiler
include path, which should be all you need.

thanks
-- PMM

reply via email to

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