[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 2/2] Remove unnecessary CONFIG_EVENTFD preproces
Re: [Qemu-devel] [PATCH 2/2] Remove unnecessary CONFIG_EVENTFD preprocessor conditional to satisfy link
Tue, 3 May 2016 02:18:24 +0100
On 3 May 2016 at 02:14, Christopher Friedt <address@hidden> wrote:
> On Mon, May 2, 2016 at 9:01 PM, Peter Maydell <address@hidden> wrote:
>> [ccing somebody else who ran into this, since I've figured out why.]
>> On 3 May 2016 at 01:47, Christopher Friedt <address@hidden> wrote:
>>> The file ivshmem.c unconditionally references event_notifier_init_fd()
>>> in util/event_notifier-posix.c, even if CONFIG_EVENTFD is not defined.
>> Yes, but ivshmem.c is only built if CONFIG_IVSHMEM, and
>> CONFIG_IVSHMEM is set (in default-configs/pci.mak) to CONFIG_EVENTFD.
>> So if CONFIG_EVENTFD is not defined then we should never build ivshmem.o.
>> The problem here is that you've run into a bug in QEMU's makefiles,
> That would explain things.
>> where a change in an included .mak file in default-configs fails
>> to cause the config-devices.mak file to be rebuilt. In commit
>> 330b583 we changed pci.mak so that CONFIG_IVSHMEM is set to
>> CONFIG_EVENTFD rather than CONFIG_POSIX, so if your config-devices.mak
>> predates that commit then it will have incorrectly not been recreated
>> and so your build will still try to build ivshmem.c.
>> You can check whether this is true by looking at
>> (for instance) x86_64-softmmu/config-devices.mak in your build
>> tree: if it has a line "CONFIG_IVSHMEM=$(CONFIG_POSIX)" in it
>> then it's the out of date version.
> $ grep "CONFIG_IVSHMEM" x86_64-softmmu/config-devices.mak
Hmm. (Is it set the same for every config-devices.mak for
every target you're trying to build?)
Next things to check: is CONFIG_EVENTFD definitely not set
in config-host.mak (it shouldn't be)? hw/misc/Makefile.objs
ought to say "obj-$(CONFIG_IVSHMEM) += ivshmem.o", and that
should mean that we don't try to build it...
- [Qemu-devel] [PATCH 1/2] Use libtool instead of ar to create static libraries on Darwin., (continued)