2da776db48
Code that does need to be visible is kept well contained inside this file and this is the only new additional file to the entire patch. This file includes the entire protocol and interfaces required to perform RDMA migration. Also, the configure and Makefile modifications to link this file are included. Full documentation is in docs/rdma.txt Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Chegu Vinod <chegu_vinod@hp.com> Tested-by: Chegu Vinod <chegu_vinod@hp.com> Tested-by: Michael R. Hines <mrhines@us.ibm.com> Signed-off-by: Michael R. Hines <mrhines@us.ibm.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
121 lines
3.6 KiB
Makefile
121 lines
3.6 KiB
Makefile
#######################################################################
|
|
# Common libraries for tools and emulators
|
|
stub-obj-y = stubs/
|
|
util-obj-y = util/ qobject/ qapi/ trace/
|
|
|
|
#######################################################################
|
|
# block-obj-y is code used by both qemu system emulation and qemu-img
|
|
|
|
block-obj-y = async.o thread-pool.o
|
|
block-obj-y += nbd.o block.o blockjob.o
|
|
block-obj-y += main-loop.o iohandler.o qemu-timer.o
|
|
block-obj-$(CONFIG_POSIX) += aio-posix.o
|
|
block-obj-$(CONFIG_WIN32) += aio-win32.o
|
|
block-obj-y += block/
|
|
block-obj-y += qapi-types.o qapi-visit.o
|
|
block-obj-y += qemu-io-cmds.o
|
|
|
|
block-obj-y += qemu-coroutine.o qemu-coroutine-lock.o qemu-coroutine-io.o
|
|
block-obj-y += qemu-coroutine-sleep.o
|
|
block-obj-y += coroutine-$(CONFIG_COROUTINE_BACKEND).o
|
|
|
|
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.
|
|
CONFIG_REALLY_VIRTFS=y
|
|
endif
|
|
|
|
######################################################################
|
|
# smartcard
|
|
|
|
libcacard-y += libcacard/cac.o libcacard/event.o
|
|
libcacard-y += libcacard/vcard.o libcacard/vreader.o
|
|
libcacard-y += libcacard/vcard_emul_nss.o
|
|
libcacard-y += libcacard/vcard_emul_type.o
|
|
libcacard-y += libcacard/card_7816.o
|
|
libcacard-y += libcacard/vcardt.o
|
|
|
|
######################################################################
|
|
# Target independent part of system emulation. The long term path is to
|
|
# suppress *all* target specific code in case of system emulation, i.e. a
|
|
# single QEMU executable should support all CPUs and machines.
|
|
|
|
ifeq ($(CONFIG_SOFTMMU),y)
|
|
common-obj-y = $(block-obj-y) blockdev.o blockdev-nbd.o block/
|
|
common-obj-y += net/
|
|
common-obj-y += readline.o
|
|
common-obj-y += qdev-monitor.o device-hotplug.o
|
|
common-obj-$(CONFIG_WIN32) += os-win32.o
|
|
common-obj-$(CONFIG_POSIX) += os-posix.o
|
|
|
|
common-obj-$(CONFIG_LINUX) += fsdev/
|
|
|
|
common-obj-y += migration.o migration-tcp.o
|
|
common-obj-$(CONFIG_RDMA) += migration-rdma.o
|
|
common-obj-y += qemu-char.o #aio.o
|
|
common-obj-y += block-migration.o
|
|
common-obj-y += page_cache.o xbzrle.o
|
|
|
|
common-obj-$(CONFIG_POSIX) += migration-exec.o migration-unix.o migration-fd.o
|
|
|
|
common-obj-$(CONFIG_SPICE) += spice-qemu-char.o
|
|
|
|
common-obj-y += audio/
|
|
common-obj-y += hw/
|
|
|
|
common-obj-y += ui/
|
|
common-obj-y += bt-host.o bt-vhci.o
|
|
|
|
common-obj-y += dma-helpers.o
|
|
common-obj-y += vl.o
|
|
common-obj-y += tpm.o
|
|
|
|
common-obj-$(CONFIG_SLIRP) += slirp/
|
|
|
|
common-obj-y += backends/
|
|
|
|
common-obj-$(CONFIG_SECCOMP) += qemu-seccomp.o
|
|
|
|
common-obj-$(CONFIG_SMARTCARD_NSS) += $(libcacard-y)
|
|
|
|
######################################################################
|
|
# qapi
|
|
|
|
common-obj-y += qmp-marshal.o
|
|
common-obj-y += qmp.o hmp.o
|
|
endif
|
|
|
|
######################################################################
|
|
# some qapi visitors are used by both system and user emulation:
|
|
|
|
common-obj-y += qapi-visit.o qapi-types.o
|
|
|
|
#######################################################################
|
|
# Target-independent parts used in system and user emulation
|
|
common-obj-y += qemu-log.o
|
|
common-obj-y += tcg-runtime.o
|
|
common-obj-y += hw/
|
|
common-obj-y += qom/
|
|
common-obj-y += disas/
|
|
|
|
######################################################################
|
|
# guest agent
|
|
|
|
# FIXME: a few definitions from qapi-types.o/qapi-visit.o are needed
|
|
# by libqemuutil.a. These should be moved to a separate .json schema.
|
|
qga-obj-y = qga/ qapi-types.o qapi-visit.o
|
|
|
|
vl.o: QEMU_CFLAGS+=$(GPROF_CFLAGS)
|
|
|
|
vl.o: QEMU_CFLAGS+=$(SDL_CFLAGS)
|
|
|
|
QEMU_CFLAGS+=$(GLIB_CFLAGS)
|
|
|
|
nested-vars += \
|
|
stub-obj-y \
|
|
util-obj-y \
|
|
qga-obj-y \
|
|
block-obj-y \
|
|
common-obj-y
|
|
dummy := $(call unnest-vars)
|