 6105683da3
			
		
	
	
		6105683da3
		
	
	
	
	
		
			
			This allows to receive mouse and keyboard events from
a Barrier server.
This is enabled by adding the following parameter on the
command line
    ... -object input-barrier,id=$id,name=$name ...
Where $name is the name declared in the screens section of barrier.conf
The barrier server (barriers) must be configured and must run on the
local host.
For instance:
  section: screens
      localhost:
          ...
      VM-1:
          ...
      end
  section: links
      localhost:
          right = VM-1
      VM-1:
          left = localhost
  end
Then on the QEMU command line:
    ... -object input-barrier,id=barrie0,name=VM-1 ...
When the mouse will move out of the screen of the local host on
the right, the mouse and the keyboard will be grabbed and all
related events will be send to the guest OS.
This is usefull when qemu is configured without emulated graphic card
but with a VFIO attached graphic card.
More information about Barrier can be found at:
  https://github.com/debauchee/barrier
This avoids to install the Barrier server in the guest OS,
for instance when it is not supported or during the installation.
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
Message-id: 20190906083812.29487-1-laurent@vivier.eu
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
		
	
			
		
			
				
	
	
		
			71 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			71 lines
		
	
	
		
			2.1 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-y += input-barrier.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) $(ICONV_CFLAGS)
 | |
| curses.mo-libs := $(CURSES_LIBS) $(ICONV_LIBS)
 | |
| 
 | |
| ifeq ($(CONFIG_GIO)$(CONFIG_SPICE),yy)
 | |
| common-obj-$(if $(CONFIG_MODULES),m,y) += spice-app.mo
 | |
| endif
 | |
| 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)
 |