diff --git a/utils/qemu/Makefile b/utils/qemu/Makefile index ccaa6ef0..0ec90fc4 100644 --- a/utils/qemu/Makefile +++ b/utils/qemu/Makefile @@ -9,10 +9,10 @@ include $(TOPDIR)/rules.mk PKG_NAME:=qemu -PKG_VERSION:=4.1.0 -PKG_RELEASE:=2 +PKG_VERSION:=4.1.1 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz -PKG_HASH:=656e60218689bdeec69903087fd7582d5d3e72238d02f4481d8dc6d79fd909c6 +PKG_HASH:=ed6fdbbdd272611446ff8036991e9b9f04a2ab2e3ffa9e79f3bab0eb9a95a1d2 PKG_SOURCE_URL:=http://download.qemu.org/ PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=LICENSE tcg/LICENSE @@ -23,11 +23,12 @@ PKG_BUILD_PARALLEL:=1 PKG_INSTALL:=1 PKG_USE_MIPS16:=0 +PKG_BUILD_DEPENDS+=spice-protocol + include $(INCLUDE_DIR)/uclibc++.mk include $(INCLUDE_DIR)/nls.mk include $(INCLUDE_DIR)/package.mk - QEMU_DEPS_IN_GUEST := @(TARGET_x86_64||TARGET_armvirt||TARGET_arm64||TARGET_malta) QEMU_DEPS_IN_HOST := @(TARGET_x86_64||TARGET_sunxi) @@ -56,7 +57,7 @@ endef define Package/qemu-ga/install $(INSTALL_DIR) $(1)/usr/bin - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/qemu-ga $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/qemu-ga $(1)/usr/bin $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/qemu-ga.init $(1)/etc/init.d/qemu-ga $(INSTALL_DIR) $(1)/etc/hotplug.d/virtio-ports @@ -147,6 +148,20 @@ qemu-firmware-efi-title:=QEMU build of iPXE EFI roms qemu-firmware-efi-files:=efi-*.rom $(eval $(call qemu-firmware,efi)) +define Package/qemu-keymaps + SECTION:=utils + CATEGORY:=Utilities + SUBMENU:=Virtualization + TITLE:=QEMU reverse keymaps for use with -k argument + URL:=http://www.qemu.org + DEPENDS:=$(QEMU_DEPS_IN_HOST) +endef + +define Package/qemu-keymaps/install + $(INSTALL_DIR) $(1)/usr/share/qemu/keymaps + $(CP) $(PKG_INSTALL_DIR)/usr/share/qemu/keymaps/* $(1)/usr/share/qemu/keymaps +endef + # Naming rules used in qemu Makefile.target define qemu-prog_ @@ -175,6 +190,11 @@ define qemu-target TITLE:=QEMU target $(1) URL:=http://www.qemu.org DEPENDS:= +glib2 +libpthread +zlib $(CXX_DEPENDS) $(QEMU_DEPS_IN_HOST) $(qemu-target-$(1)-deps) \ + +QEMU_UI_VNC:qemu-keymaps \ + +QEMU_UI_VNC_JPEG:libjpeg \ + +QEMU_UI_VNC_PNG:libpng \ + +QEMU_UI_VNC_SASL:libsasl2 \ + +QEMU_UI_SPICE:libspice-server \ $(if $(filter %-softmmu,$(1)),+libncurses +libfdt +pixman +qemu-firmware-efi $(ICONV_DEPENDS)) endef @@ -212,6 +232,33 @@ $(foreach target,$(qemu-target-list), \ $(eval $(call qemu-target,$(target))) \ ) +define Package/qemu-$(firstword $(qemu-target-list))/config +if $(subst $(space),||,$(foreach target,$(qemu-target-list),PACKAGE_qemu-$(target))) +config QEMU_UI_VNC + bool "QEMU VNC support" + default y + +config QEMU_UI_VNC_JPEG + bool "QEMU VNC jpeg tight encoding support" + default n + depends on QEMU_UI_VNC + +config QEMU_UI_VNC_PNG + bool "QEMU VNC png tight encoding support" + default n + depends on QEMU_UI_VNC + +config QEMU_UI_VNC_SASL + bool "QEMU VNC SASL auth support" + default n + depends on QEMU_UI_VNC + +config QEMU_UI_SPICE + bool "QEMU SPICE ui support" + +endif +endef + # QEMU configure script does not recognize these options CONFIGURE_ARGS:=$(filter-out \ @@ -277,12 +324,12 @@ CONFIGURE_ARGS += \ --disable-gtk \ --disable-sdl \ --disable-sdl-image \ - --disable-spice \ + --$(if $(CONFIG_QEMU_UI_SPICE),enable,disable)-spice \ --disable-virglrenderer \ - --disable-vnc \ - --disable-vnc-jpeg \ - --disable-vnc-png \ - --disable-vnc-sasl \ + --$(if $(CONFIG_QEMU_UI_VNC),enable,disable)-vnc \ + --$(if $(CONFIG_QEMU_UI_VNC_JPEG),enable,disable)-vnc-jpeg \ + --$(if $(CONFIG_QEMU_UI_VNC_PNG),enable,disable)-vnc-png \ + --$(if $(CONFIG_QEMU_UI_VNC_SASL),enable,disable)-vnc-sasl \ --disable-vte \ --enable-curses \ --enable-iconv \ @@ -389,6 +436,7 @@ $(eval $(call BuildPackage,qemu-ga)) $(eval $(call BuildPackage,qemu-bridge-helper)) $(eval $(call BuildPackage,qemu-img)) $(eval $(call BuildPackage,qemu-nbd)) +$(eval $(call BuildPackage,qemu-keymaps)) $(foreach p,$(QEMU_PACKAGES), \ $(eval $(call BuildPackage,$(p))) \ )