@@ -372,8 +372,6 @@ qemu-img$(EXESUF): qemu-img.o $(authz-obj-y) $(block-obj-y) $(crypto-obj-y) $(io
qemu-nbd$(EXESUF): qemu-nbd.o $(authz-obj-y) $(block-obj-y) $(crypto-obj-y) $(io-obj-y) $(qom-obj-y) $(COMMON_LDADDS)
qemu-io$(EXESUF): qemu-io.o $(authz-obj-y) $(block-obj-y) $(crypto-obj-y) $(io-obj-y) $(qom-obj-y) $(COMMON_LDADDS)
-qemu-keymap$(EXESUF): qemu-keymap.o ui/input-keymap.o $(COMMON_LDADDS)
-
qemu-edid$(EXESUF): qemu-edid.o hw/display/edid-generate.o $(COMMON_LDADDS)
fsdev/virtfs-proxy-helper$(EXESUF): fsdev/virtfs-proxy-helper.o fsdev/9p-marshal.o fsdev/9p-iov-marshal.o $(COMMON_LDADDS)
@@ -387,9 +385,6 @@ endif
qemu-img-cmds.h: $(SRC_PATH)/qemu-img-cmds.hx $(SRC_PATH)/scripts/hxtool
$(call quiet-command,sh $(SRC_PATH)/scripts/hxtool -h < $< > $@,"GEN","$@")
-qemu-keymap$(EXESUF): LIBS += $(XKBCOMMON_LIBS)
-qemu-keymap$(EXESUF): QEMU_CFLAGS += $(XKBCOMMON_CFLAGS)
-
ifneq ($(EXESUF),)
.PHONY: qga/qemu-ga
qga/qemu-ga: qga/qemu-ga$(EXESUF) $(QGA_VSS_PROVIDER) $(QEMU_GA_MSI)
@@ -385,7 +385,6 @@ vde=""
vnc_sasl=""
vnc_jpeg=""
vnc_png=""
-xkbcommon=""
xen=""
xen_ctrl_version=""
xen_pci_passthrough=""
@@ -3292,22 +3291,6 @@ EOF
fi
##########################################
-# xkbcommon probe
-if test "$xkbcommon" != "no" ; then
- if $pkg_config xkbcommon --exists; then
- xkbcommon_cflags=$($pkg_config xkbcommon --cflags)
- xkbcommon_libs=$($pkg_config xkbcommon --libs)
- xkbcommon=yes
- else
- if test "$xkbcommon" = "yes" ; then
- feature_not_found "xkbcommon" "Install libxkbcommon-devel"
- fi
- xkbcommon=no
- fi
-fi
-
-
-##########################################
# xfsctl() probe, used for file-posix.c
if test "$xfs" != "no" ; then
cat > $TMPC << EOF
@@ -6093,9 +6076,6 @@ if test "$softmmu" = yes ; then
fi
mpath=no
fi
- if test "$xkbcommon" = "yes"; then
- tools="qemu-keymap\$(EXESUF) $tools"
- fi
fi
# Probe for guest agent support/options
@@ -6640,10 +6620,6 @@ fi
if test "$vnc_png" = "yes" ; then
echo "CONFIG_VNC_PNG=y" >> $config_host_mak
fi
-if test "$xkbcommon" = "yes" ; then
- echo "XKBCOMMON_CFLAGS=$xkbcommon_cflags" >> $config_host_mak
- echo "XKBCOMMON_LIBS=$xkbcommon_libs" >> $config_host_mak
-fi
if test "$xfs" = "yes" ; then
echo "CONFIG_XFS=y" >> $config_host_mak
fi
@@ -60,6 +60,7 @@ libcap_ng = declare_dependency()
if 'CONFIG_LIBCAP_NG' in config_host
libcap_ng = declare_dependency(link_args: config_host['LIBCAP_NG_LIBS'].split())
endif
+xkbcommon = dependency('xkbcommon', required: false)
rt = cc.find_library('rt', required: false)
libiscsi = declare_dependency()
if 'CONFIG_LIBISCSI' in config_host
@@ -228,6 +229,11 @@ if have_tools
subdir('contrib/rdmacm-mux')
subdir('contrib/elf2dmp')
+ if xkbcommon.found()
+ executable('qemu-keymap', files('qemu-keymap.c', 'ui/input-keymap.c'),
+ dependencies: [qemuutil, xkbcommon], install: true)
+ endif
+
if 'CONFIG_VHOST_USER' in config_host
subdir('contrib/libvhost-user')
subdir('contrib/vhost-user-blk')