summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2019-07-25 12:03:30 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2019-08-20 17:26:19 +0200
commit98387d58024e3fb1b88d5a57912e4514d7f39c7c (patch)
tree4b16f5441f6400341480c5f2baef92a93f1894ac
parent52bf9771fdfce98e98cea36a17a18915be6f6b7f (diff)
downloadqemu-98387d58024e3fb1b88d5a57912e4514d7f39c7c.zip
9p: simplify source file selection
Express the complex conditions in Kconfig rather than Makefiles, since Kconfig is better suited at expressing dependencies and detecting contradictions. Cc: Marc-André Lureau <marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--Kconfig.host1
-rw-r--r--fsdev/Makefile.objs2
-rw-r--r--hw/9pfs/Kconfig5
3 files changed, 7 insertions, 1 deletions
diff --git a/Kconfig.host b/Kconfig.host
index aec95365ff..bb6e116e2a 100644
--- a/Kconfig.host
+++ b/Kconfig.host
@@ -28,6 +28,7 @@ config VHOST_USER
config XEN
bool
+ select FSDEV_9P if VIRTFS
config VIRTFS
bool
diff --git a/fsdev/Makefile.objs b/fsdev/Makefile.objs
index 24bbb3e75c..42cd70c367 100644
--- a/fsdev/Makefile.objs
+++ b/fsdev/Makefile.objs
@@ -1,6 +1,6 @@
# Lots of the fsdev/9pcode is pulled in by vl.c via qemu_fsdev_add.
# only pull in the actual 9p backend if we also enabled virtio or xen.
-ifeq ($(call land,$(CONFIG_VIRTFS),$(call lor,$(CONFIG_VIRTIO_9P),$(CONFIG_XEN))),y)
+ifeq ($(CONFIG_FSDEV_9P),y)
common-obj-y = qemu-fsdev.o 9p-marshal.o 9p-iov-marshal.o
else
common-obj-y = qemu-fsdev-dummy.o
diff --git a/hw/9pfs/Kconfig b/hw/9pfs/Kconfig
index 8c5032c575..3ae5749661 100644
--- a/hw/9pfs/Kconfig
+++ b/hw/9pfs/Kconfig
@@ -1,4 +1,9 @@
+config FSDEV_9P
+ bool
+ depends on VIRTFS
+
config VIRTIO_9P
bool
default y
depends on VIRTFS && VIRTIO
+ select FSDEV_9P