Makefile.objs 5.3 KB
Newer Older
1
#######################################################################
2
# Common libraries for tools and emulators
3
stub-obj-y = stubs/ crypto/
4 5
util-obj-y = util/ qobject/ qapi/
util-obj-y += qmp-introspect.o qapi-types.o qapi-visit.o qapi-event.o
6

M
Marc-André Lureau 已提交
7 8
chardev-obj-y = chardev/

9 10 11
#######################################################################
# block-obj-y is code used by both qemu system emulation and qemu-img

F
Fam Zheng 已提交
12 13
block-obj-y += nbd/
block-obj-y += block.o blockjob.o
14
block-obj-y += block/
15
block-obj-y += qemu-io-cmds.o
16
block-obj-$(CONFIG_REPLICATION) += replication.o
17

18 19
block-obj-m = block/

20 21 22 23 24
#######################################################################
# crypto-obj-y is code used by both qemu system emulation and qemu-img

crypto-obj-y = crypto/
crypto-aes-obj-y = crypto/
25

26 27 28 29 30
#######################################################################
# qom-obj-y is code used by both qemu system emulation and qemu-img

qom-obj-y = qom/

31 32 33 34 35
#######################################################################
# io-obj-y is code used by both qemu system emulation and qemu-img

io-obj-y = io/

36
######################################################################
37 38 39
# 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.
40

P
Paolo Bonzini 已提交
41
ifeq ($(CONFIG_SOFTMMU),y)
42
common-obj-y = blockdev.o blockdev-nbd.o block/
43
common-obj-y += iothread.o
P
Paolo Bonzini 已提交
44
common-obj-y += net/
45
common-obj-y += qdev-monitor.o device-hotplug.o
46 47
common-obj-$(CONFIG_WIN32) += os-win32.o
common-obj-$(CONFIG_POSIX) += os-posix.o
G
Gerd Hoffmann 已提交
48

49 50
common-obj-$(CONFIG_LINUX) += fsdev/

51
common-obj-y += migration/
52

53
common-obj-y += audio/
54
common-obj-y += hw/
55

56 57
common-obj-y += replay/

58
common-obj-y += ui/
59
common-obj-y += bt-host.o bt-vhci.o
60
bt-host.o-cflags := $(BLUEZ_CFLAGS)
61

S
Stefan Weil 已提交
62 63
common-obj-y += dma-helpers.o
common-obj-y += vl.o
64
vl.o-cflags := $(GPROF_CFLAGS) $(SDL_CFLAGS)
65
common-obj-y += tpm.o
66

67
common-obj-$(CONFIG_SLIRP) += slirp/
68

69
common-obj-y += backends/
70
common-obj-y += chardev/
71

72
common-obj-$(CONFIG_SECCOMP) += qemu-seccomp.o
73

74 75
common-obj-$(CONFIG_FDT) += device_tree.o

M
Michael Roth 已提交
76 77 78
######################################################################
# qapi

79
common-obj-y += qmp-marshal.o
80
common-obj-y += qmp-introspect.o
A
Anthony Liguori 已提交
81
common-obj-y += qmp.o hmp.o
P
Paolo Bonzini 已提交
82
endif
83

84 85
#######################################################################
# Target-independent parts used in system and user emulation
R
Richard Henderson 已提交
86
common-obj-y += cpus-common.o
P
Paolo Bonzini 已提交
87 88 89
common-obj-y += hw/
common-obj-y += qom/
common-obj-y += disas/
90

91 92 93 94
######################################################################
# Resource file for Windows executables
version-obj-$(CONFIG_WIN32) += $(BUILD_DIR)/version.o

95 96 97 98 99
######################################################################
# tracing
util-obj-y +=  trace/
target-obj-y += trace/

100 101 102
######################################################################
# guest agent

103 104
# 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.
105
qga-obj-y = qga/
106
qga-vss-dll-obj-y = qga/
107 108 109 110 111

######################################################################
# contrib
ivshmem-client-obj-y = contrib/ivshmem-client/
ivshmem-server-obj-y = contrib/ivshmem-server/
M
Marc-André Lureau 已提交
112
libvhost-user-obj-y = contrib/libvhost-user/
113 114

######################################################################
115 116 117 118 119 120
trace-events-subdirs =
trace-events-subdirs += util
trace-events-subdirs += crypto
trace-events-subdirs += io
trace-events-subdirs += migration
trace-events-subdirs += block
A
Anatoli Huseu1 已提交
121
trace-events-subdirs += backends
122
trace-events-subdirs += chardev
123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157
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
158
trace-events-subdirs += target/mips
159 160 161 162 163 164
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
165
trace-events-subdirs += accel/tcg
166
trace-events-subdirs += accel/kvm
167 168 169 170 171 172 173 174

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)