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.mayd...@linaro.org>
wrote:

> On Fri, 16 Jul 2021 at 16:16, Kenneth Adam Miller
> <kennethadammil...@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