 d8aec9d9f1
			
		
	
	
		d8aec9d9f1
		
	
	
	
	
		
			
			Add a new display backend that will configure Spice to allow a remote client to control QEMU in a similar fashion as other QEMU display backend/UI like GTK. For this to work, it will set up Spice server with a unix socket, and register a VC chardev that will be exposed as Spice ports. A QMP monitor is also exposed as a Spice port, this allows the remote client fuller qemu control and state handling. - doesn't handle VC set_echo() - this doesn't seem a strong requirement, very few front-end use it - spice options can be tweaked with other -spice arguments - Windows support shouldn't be hard to do, but will probably use a TCP port instead - we may want to watch the child process to quit automatically if it crashed Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Tested-by: Victor Toso <victortoso@redhat.com> Message-id: 20190221110703.5775-12-marcandre.lureau@redhat.com [ kraxel: squash incremental fix ] Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
		
			
				
	
	
		
			68 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			68 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| vnc-obj-y += vnc.o
 | |
| vnc-obj-y += vnc-enc-zlib.o vnc-enc-hextile.o
 | |
| vnc-obj-y += vnc-enc-tight.o vnc-palette.o
 | |
| vnc-obj-y += vnc-enc-zrle.o
 | |
| vnc-obj-y += vnc-auth-vencrypt.o
 | |
| vnc-obj-$(CONFIG_VNC_SASL) += vnc-auth-sasl.o
 | |
| vnc-obj-y += vnc-ws.o
 | |
| vnc-obj-y += vnc-jobs.o
 | |
| 
 | |
| common-obj-y += keymaps.o console.o cursor.o qemu-pixman.o
 | |
| common-obj-y += input.o input-keymap.o input-legacy.o kbd-state.o
 | |
| common-obj-$(CONFIG_LINUX) += input-linux.o
 | |
| common-obj-$(CONFIG_SPICE) += spice-core.o spice-input.o spice-display.o
 | |
| common-obj-$(CONFIG_COCOA) += cocoa.o
 | |
| common-obj-$(CONFIG_VNC) += $(vnc-obj-y)
 | |
| common-obj-$(call lnot,$(CONFIG_VNC)) += vnc-stubs.o
 | |
| 
 | |
| # ui-sdl module
 | |
| common-obj-$(CONFIG_SDL) += sdl.mo
 | |
| sdl.mo-objs := sdl2.o sdl2-input.o sdl2-2d.o
 | |
| ifeq ($(CONFIG_OPENGL),y)
 | |
| sdl.mo-objs += sdl2-gl.o
 | |
| endif
 | |
| sdl.mo-cflags := $(SDL_CFLAGS)
 | |
| sdl.mo-libs := $(SDL_LIBS)
 | |
| 
 | |
| # ui-gtk module
 | |
| common-obj-$(CONFIG_GTK) += gtk.mo
 | |
| gtk.mo-objs := gtk.o
 | |
| gtk.mo-cflags := $(GTK_CFLAGS) $(VTE_CFLAGS)
 | |
| gtk.mo-libs := $(GTK_LIBS) $(VTE_LIBS)
 | |
| ifeq ($(CONFIG_OPENGL),y)
 | |
| gtk.mo-objs += gtk-egl.o
 | |
| gtk.mo-libs += $(OPENGL_LIBS)
 | |
| ifeq ($(CONFIG_GTK_GL),y)
 | |
| gtk.mo-objs += gtk-gl-area.o
 | |
| endif
 | |
| endif
 | |
| 
 | |
| ifeq ($(CONFIG_X11),y)
 | |
| sdl.mo-objs += x_keymap.o
 | |
| gtk.mo-objs += x_keymap.o
 | |
| x_keymap.o-cflags := $(X11_CFLAGS)
 | |
| x_keymap.o-libs := $(X11_LIBS)
 | |
| endif
 | |
| 
 | |
| common-obj-$(CONFIG_CURSES) += curses.mo
 | |
| curses.mo-objs := curses.o
 | |
| curses.mo-cflags := $(CURSES_CFLAGS)
 | |
| curses.mo-libs := $(CURSES_LIBS)
 | |
| 
 | |
| common-obj-$(call land,$(CONFIG_SPICE),$(CONFIG_GIO)) += spice-app.mo
 | |
| spice-app.mo-objs := spice-app.o
 | |
| spice-app.mo-cflags := $(GIO_CFLAGS)
 | |
| spice-app.mo-libs := $(GIO_LIBS)
 | |
| 
 | |
| common-obj-$(CONFIG_OPENGL) += shader.o
 | |
| common-obj-$(CONFIG_OPENGL) += console-gl.o
 | |
| common-obj-$(CONFIG_OPENGL) += egl-helpers.o
 | |
| common-obj-$(CONFIG_OPENGL) += egl-context.o
 | |
| common-obj-$(CONFIG_OPENGL_DMABUF) += egl-headless.o
 | |
| 
 | |
| shader.o-libs += $(OPENGL_LIBS)
 | |
| console-gl.o-libs += $(OPENGL_LIBS)
 | |
| egl-helpers.o-libs += $(OPENGL_LIBS)
 | |
| egl-context.o-libs += $(OPENGL_LIBS)
 | |
| egl-headless.o-libs += $(OPENGL_LIBS)
 |