[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] 9pfs: fix dependencies
From: |
Thomas Huth |
Subject: |
Re: [Qemu-devel] [PATCH] 9pfs: fix dependencies |
Date: |
Wed, 9 Aug 2017 07:12:51 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.0 |
On 08.08.2017 18:26, Greg Kurz wrote:
> On Tue, 8 Aug 2017 17:38:27 +0200
> Cornelia Huck <address@hidden> wrote:
>
>> Nothing in fsdev/ or hw/9pfs/ depends on pci; it should rather depend
>> on CONFIG_VIRTFS and on the presence of an appropriate virtio transport
>> device.
>>
>> Let's introduce CONFIG_VIRTIO_CCW to cover s390x and check for
>> CONFIG_VIRTFS && (CONFIG_VIRTIO_PCI || CONFIG_VIRTIO_CCW).
>>
>> Signed-off-by: Cornelia Huck <address@hidden>
>> ---
>>
>> This is the alternative approach to "9pfs: fix and simplify dependencies".
>> Uglier; but probably not broken...
>>
>
> Yikes. I don't know why yet but this doesn't work for PCI-less targets
> like cris-softmmu...
>
> LINK cris-softmmu/qemu-system-cris
> vl.o: In function `fsdev_init_func':
> vl.c:2360: undefined reference to `qemu_fsdev_add'
>
>> ---
>> default-configs/s390x-softmmu.mak | 1 +
>> fsdev/Makefile.objs | 9 +++------
>> hw/Makefile.objs | 2 +-
>> 3 files changed, 5 insertions(+), 7 deletions(-)
>>
>> diff --git a/default-configs/s390x-softmmu.mak
>> b/default-configs/s390x-softmmu.mak
>> index 51191b77df..e4c5236ceb 100644
>> --- a/default-configs/s390x-softmmu.mak
>> +++ b/default-configs/s390x-softmmu.mak
>> @@ -8,3 +8,4 @@ CONFIG_S390_FLIC=y
>> CONFIG_S390_FLIC_KVM=$(CONFIG_KVM)
>> CONFIG_VFIO_CCW=$(CONFIG_LINUX)
>> CONFIG_WDT_DIAG288=y
>> +CONFIG_VIRTIO_CCW=y
>> diff --git a/fsdev/Makefile.objs b/fsdev/Makefile.objs
>> index 659df6e187..10d8caa291 100644
>> --- a/fsdev/Makefile.objs
>> +++ b/fsdev/Makefile.objs
>> @@ -1,10 +1,7 @@
>> -ifeq ($(CONFIG_VIRTIO)$(CONFIG_VIRTFS)$(CONFIG_PCI),yyy)
>> # Lots of the fsdev/9pcode is pulled in by vl.c via qemu_fsdev_add.
>> -# only pull in the actual virtio-9p device if we also enabled virtio.
>> -common-obj-y = qemu-fsdev.o 9p-marshal.o 9p-iov-marshal.o
>> -else
>> -common-obj-y = qemu-fsdev-dummy.o
>> -endif
>> +# only pull in the actual virtio-9p device if we also enabled a virtio
>> backend.
>> +common-obj-$(call land, $(CONFIG_VIRTFS),$(call lor,
>> $(CONFIG_VIRTIO_PCI),$(CONFIG_VIRTIO_CCW)))= qemu-fsdev.o 9p-marshal.o
>> 9p-iov-marshal.o
>> +common-obj-$(call lnot, $(call land, $(CONFIG_VIRTFS),$(call lor,
>> $(CONFIG_VIRTIO_PCI),$(CONFIG_VIRTIO_CCW)))) = qemu-fsdev-dummy.o
>> common-obj-y += qemu-fsdev-opts.o qemu-fsdev-throttle.o
>>
>> # Toplevel always builds this; targets without virtio will put it in
>> diff --git a/hw/Makefile.objs b/hw/Makefile.objs
>> index a2c61f6b09..10942fe0b4 100644
>> --- a/hw/Makefile.objs
>> +++ b/hw/Makefile.objs
>> @@ -1,4 +1,4 @@
>> -devices-dirs-$(call land, $(CONFIG_VIRTIO),$(call
>> land,$(CONFIG_VIRTFS),$(CONFIG_PCI))) += 9pfs/
>> +devices-dirs-$(call land, $(CONFIG_VIRTFS),$(call
>> lor,$(CONFIG_VIRTIO_PCI),$(CONFIG_VIRTIO_CCW))) += 9pfs/
>> devices-dirs-$(CONFIG_SOFTMMU) += acpi/
>> devices-dirs-$(CONFIG_SOFTMMU) += adc/
>> devices-dirs-$(CONFIG_SOFTMMU) += audio/
I think the problem are the white spaces after a ",". For example for
the following test code in a makefile:
@echo test1: $(call lnot, n)
@echo test2: $(call lnot,n)
I get the following output:
test1: n
test2: y
Hope that helps,
Thomas
signature.asc
Description: OpenPGP digital signature