123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173 |
- #######################################################################
- # Common libraries for tools and emulators
- stub-obj-y = stubs/ crypto/
- util-obj-y = util/ qobject/ qapi/
- util-obj-y += qmp-introspect.o qapi-types.o qapi-visit.o qapi-event.o
- chardev-obj-y = chardev/
- #######################################################################
- # block-obj-y is code used by both qemu system emulation and qemu-img
- block-obj-y += nbd/
- block-obj-y += block.o blockjob.o
- block-obj-y += block/
- block-obj-y += qemu-io-cmds.o
- block-obj-$(CONFIG_REPLICATION) += replication.o
- block-obj-m = block/
- #######################################################################
- # crypto-obj-y is code used by both qemu system emulation and qemu-img
- crypto-obj-y = crypto/
- crypto-aes-obj-y = crypto/
- #######################################################################
- # qom-obj-y is code used by both qemu system emulation and qemu-img
- qom-obj-y = qom/
- #######################################################################
- # io-obj-y is code used by both qemu system emulation and qemu-img
- io-obj-y = io/
- ######################################################################
- # 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 = blockdev.o blockdev-nbd.o block/
- common-obj-y += iothread.o
- common-obj-y += net/
- 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/
- common-obj-y += audio/
- common-obj-y += hw/
- common-obj-y += accel.o
- common-obj-y += replay/
- common-obj-y += ui/
- common-obj-y += bt-host.o bt-vhci.o
- bt-host.o-cflags := $(BLUEZ_CFLAGS)
- common-obj-y += dma-helpers.o
- common-obj-y += vl.o
- vl.o-cflags := $(GPROF_CFLAGS) $(SDL_CFLAGS)
- common-obj-y += tpm.o
- common-obj-$(CONFIG_SLIRP) += slirp/
- common-obj-y += backends/
- common-obj-y += chardev/
- common-obj-$(CONFIG_SECCOMP) += qemu-seccomp.o
- common-obj-$(CONFIG_FDT) += device_tree.o
- ######################################################################
- # qapi
- common-obj-y += qmp-marshal.o
- common-obj-y += qmp-introspect.o
- common-obj-y += qmp.o hmp.o
- endif
- #######################################################################
- # Target-independent parts used in system and user emulation
- common-obj-y += cpus-common.o
- common-obj-y += hw/
- common-obj-y += qom/
- common-obj-y += disas/
- ######################################################################
- # Resource file for Windows executables
- version-obj-$(CONFIG_WIN32) += $(BUILD_DIR)/version.o
- ######################################################################
- # tracing
- util-obj-y += trace/
- target-obj-y += trace/
- ######################################################################
- # 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/
- qga-vss-dll-obj-y = qga/
- ######################################################################
- # contrib
- ivshmem-client-obj-y = contrib/ivshmem-client/
- ivshmem-server-obj-y = contrib/ivshmem-server/
- libvhost-user-obj-y = contrib/libvhost-user/
- ######################################################################
- trace-events-subdirs =
- trace-events-subdirs += util
- trace-events-subdirs += crypto
- trace-events-subdirs += io
- trace-events-subdirs += migration
- trace-events-subdirs += block
- trace-events-subdirs += backends
- trace-events-subdirs += chardev
- trace-events-subdirs += hw/block
- trace-events-subdirs += hw/block/dataplane
- trace-events-subdirs += hw/char
- trace-events-subdirs += hw/intc
- trace-events-subdirs += hw/net
- trace-events-subdirs += hw/virtio
- trace-events-subdirs += hw/audio
- trace-events-subdirs += hw/misc
- trace-events-subdirs += hw/usb
- trace-events-subdirs += hw/scsi
- trace-events-subdirs += hw/nvram
- trace-events-subdirs += hw/display
- trace-events-subdirs += hw/input
- trace-events-subdirs += hw/timer
- trace-events-subdirs += hw/dma
- trace-events-subdirs += hw/sparc
- trace-events-subdirs += hw/sd
- trace-events-subdirs += hw/isa
- trace-events-subdirs += hw/mem
- trace-events-subdirs += hw/i386
- trace-events-subdirs += hw/i386/xen
- trace-events-subdirs += hw/9pfs
- trace-events-subdirs += hw/ppc
- trace-events-subdirs += hw/pci
- trace-events-subdirs += hw/s390x
- trace-events-subdirs += hw/vfio
- trace-events-subdirs += hw/acpi
- trace-events-subdirs += hw/arm
- trace-events-subdirs += hw/alpha
- trace-events-subdirs += hw/xen
- trace-events-subdirs += ui
- trace-events-subdirs += audio
- trace-events-subdirs += net
- trace-events-subdirs += target/arm
- trace-events-subdirs += target/i386
- trace-events-subdirs += target/mips
- trace-events-subdirs += target/sparc
- trace-events-subdirs += target/s390x
- trace-events-subdirs += target/ppc
- trace-events-subdirs += qom
- trace-events-subdirs += linux-user
- trace-events-subdirs += qapi
- trace-events-files = $(SRC_PATH)/trace-events $(trace-events-subdirs:%=$(SRC_PATH)/%/trace-events)
- trace-obj-y = trace-root.o
- trace-obj-y += $(trace-events-subdirs:%=%/trace.o)
- trace-obj-$(CONFIG_TRACE_UST) += trace-ust-all.o
- trace-obj-$(CONFIG_TRACE_DTRACE) += trace-dtrace-root.o
- trace-obj-$(CONFIG_TRACE_DTRACE) += $(trace-events-subdirs:%=%/trace-dtrace.o)
|