mbox series

[0/7] Make SPICE a load module

Message ID 20200723174615.2370096-1-dinechin@redhat.com
Headers show
Series Make SPICE a load module | expand

Message

Christophe de Dinechin July 23, 2020, 5:46 p.m. UTC
This series builds the qemu SPICE code into a load module in order to
remove the number of shared libraries that the main qemu binary
depends on.

It is intended to be built on the work that Gerd shared recently
regarding modular devices and chardev initialization. I left the
patch I used in the series since Gerd may still be working on it.

With these changes, the following shared libraries are no longer
needed in the main binary:

        libspice-server.so.1
        libopus.so.0
        liblz4.so.1
        libgstapp-1.0.so.0
        libgstvideo-1.0.so.0
        libgstbase-1.0.so.0
        libgstreamer-1.0.so.0
        libssl.so.1.1
        liborc-0.4.so.0

There are still some not-so-nice changes in the makefiles,
e.g. references to ../directory/foo.o. I don't want to invest too much
time in fixing it the right way if Meson changes the way these things
are built.

Christophe de Dinechin (5):
  minikconf: Pass variables for modules
  spice: Make spice a module configuration
  spice: Move all the spice-related code in spice-app.so
  build: Add SPICE_CFLAGS and SPICE_LIBS to relevant files
  spice: Call qemu spice functions indirectly

Gerd Hoffmann (2):
  spice: simplify chardev setup
  build: fix device module builds

 audio/Makefile.objs      |  2 +-
 chardev/Makefile.objs    |  2 +-
 chardev/spice.c          | 29 ++++------------
 configure                |  6 ++--
 dtc                      |  2 +-
 hw/display/Makefile.objs |  1 +
 hw/i386/pc.c             |  1 -
 include/chardev/spice.h  |  1 -
 include/ui/qemu-spice.h  | 75 ++++++++++++++++++----------------------
 monitor/Makefile.objs    |  3 ++
 monitor/hmp-cmds.c       | 13 +++++++
 monitor/misc.c           |  2 +-
 monitor/qmp-cmds.c       |  6 ++--
 roms/SLOF                |  2 +-
 roms/openbios            |  2 +-
 roms/opensbi             |  2 +-
 roms/seabios             |  2 +-
 scripts/minikconf.py     |  4 +--
 slirp                    |  2 +-
 softmmu/Makefile.objs    |  2 +-
 softmmu/vl.c             | 35 ++++++++++++++++---
 ui/Makefile.objs         | 12 +++----
 ui/spice-app.c           | 17 ++++-----
 ui/spice-core.c          | 35 ++++++++++++++++---
 24 files changed, 150 insertions(+), 108 deletions(-)

-- 
2.26.2