[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 00/67] Make pixman an optional dependency
From: |
Marc-André Lureau |
Subject: |
Re: [PATCH 00/67] Make pixman an optional dependency |
Date: |
Wed, 30 Aug 2023 15:01:27 +0400 |
Hi
On Wed, Aug 30, 2023 at 2:53 PM Thomas Huth <thuth@redhat.com> wrote:
>
> On 30/08/2023 11.37, marcandre.lureau@redhat.com wrote:
> > From: Marc-André Lureau <marcandre.lureau@redhat.com>
> >
> > Hi,
> >
> > QEMU system emulators can be made to compile and work without pixman.
> >
> > Given how pervasively pixman types and API is used in all the code base, it
> > was
> > a bit difficult to figure out how to cut the dependency.
> >
> > I decided that it was important to keep VGA and graphics device working for
> > compatibility reasons, although some devices, such as xlnx Display Port,
> > have
> > stronger dependency and have to be disabled. The ui/console code also has a
> > lot
> > of pixman usage and a bit of a mess to deal with. I made large refactoring
> > to
> > allow to compile out the VC code.
> >
> > The series can be roughly divded as:
> > - a few related preliminary cleanups
> > - ui/console refactoring to allow ui/vc split
> > - add a 'pixman' option, and a minimal pixman-compat.h
> > - make some parts depend on 'pixman'
> >
> > Graphic -display still work, although with some caveats. For ex, -display
> > sdl or
> > cocoa don't have VCs, so starting QEMU will print the following warnings
> > when
> > pixman is disabled:
>
> I just had a quick look at the series, but for me it looks like this is
> adding a lot of additional complexity to the code (adds lots of #ifdefs, and
> adds a subset of the pixman library to the code base), which seems somewhat
The #ifdef aren't so bad (at least I can bare it). Just a quick stat:
$ git diff origin/master | grep "+#ifdef CONFIG_PIXMAN" | wc -l
11
> unfortunate for such a marginal feature request. What's really so bad about
> requiring pixman for building QEMU?
Not that a good part of the series is cleaning up ui/console.c code
that really deserved it. It makes it use QOM, and split VC code. It's
still worth it regardless of the outcome for pixman.
> IMHO, if we really want to go down this path, I think we should rather
> disable all graphic related stuff in QEMU instead, i.e. disable VGA cards,
> Spice, SDL, etc. completely. I think this is also what has been requested in
>
The various features and devices can be disabled by other means. I
think we should aim at making the different configure options
orthogonal, so QEMU without pixman can still provide most gfx/vga/UI
experience too, by default.
> the original gitlab issue ticket where the reporter wanted to compile a
> text-mode only QEMU binary...?
So that is not an incompatible goal, further tuning of configure
options can help.
- Re: [PATCH 61/67] ui/spice: SPICE/QXL requires PIXMAN, (continued)
- [PATCH 63/67] ui/dbus: do not require PIXMAN, marcandre . lureau, 2023/08/30
- [PATCH 65/67] ppc/kconfig: make SAM460EX depend on PPC & PIXMAN, marcandre . lureau, 2023/08/30
- [PATCH 64/67] arm/kconfig: XLNX_ZYNQMP_ARM depends on PIXMAN, marcandre . lureau, 2023/08/30
- [PATCH 66/67] sh4/kconfig: make R2D depend on SH4 & PIXMAN, marcandre . lureau, 2023/08/30
- [PATCH 67/67] display/kconfig: make SM501 depend on PIXMAN, marcandre . lureau, 2023/08/30
- Re: [PATCH 00/67] Make pixman an optional dependency, Thomas Huth, 2023/08/30
- Re: [PATCH 00/67] Make pixman an optional dependency,
Marc-André Lureau <=