]>
Commit | Line | Data |
---|---|---|
1 | ####################################################################### | |
2 | # Common libraries for tools and emulators | |
3 | stub-obj-y = stubs/ util/ crypto/ | |
4 | util-obj-y = util/ qobject/ qapi/ | |
5 | ||
6 | chardev-obj-y = chardev/ | |
7 | ||
8 | ####################################################################### | |
9 | # authz-obj-y is code used by both qemu system emulation and qemu-img | |
10 | ||
11 | authz-obj-y = authz/ | |
12 | ||
13 | ####################################################################### | |
14 | # block-obj-y is code used by both qemu system emulation and qemu-img | |
15 | ||
16 | block-obj-y = nbd/ | |
17 | block-obj-y += block.o blockjob.o job.o | |
18 | block-obj-y += block/ scsi/ | |
19 | block-obj-y += qemu-io-cmds.o | |
20 | block-obj-$(CONFIG_REPLICATION) += replication.o | |
21 | ||
22 | block-obj-m = block/ | |
23 | ||
24 | ####################################################################### | |
25 | # crypto-obj-y is code used by both qemu system emulation and qemu-img | |
26 | ||
27 | crypto-obj-y = crypto/ | |
28 | crypto-user-obj-y = crypto/ | |
29 | ||
30 | ####################################################################### | |
31 | # qom-obj-y is code used by both qemu system emulation and qemu-img | |
32 | ||
33 | qom-obj-y = qom/ | |
34 | ||
35 | ####################################################################### | |
36 | # io-obj-y is code used by both qemu system emulation and qemu-img | |
37 | ||
38 | io-obj-y = io/ | |
39 | ||
40 | ###################################################################### | |
41 | # Target independent part of system emulation. The long term path is to | |
42 | # suppress *all* target specific code in case of system emulation, i.e. a | |
43 | # single QEMU executable should support all CPUs and machines. | |
44 | ||
45 | ifeq ($(CONFIG_SOFTMMU),y) | |
46 | common-obj-y = blockdev.o blockdev-nbd.o block/ | |
47 | common-obj-y += bootdevice.o iothread.o | |
48 | common-obj-y += dump/ | |
49 | common-obj-y += job-qmp.o | |
50 | common-obj-y += monitor/ | |
51 | common-obj-y += net/ | |
52 | common-obj-y += qdev-monitor.o device-hotplug.o | |
53 | common-obj-$(CONFIG_WIN32) += os-win32.o | |
54 | common-obj-$(CONFIG_POSIX) += os-posix.o | |
55 | ||
56 | common-obj-$(CONFIG_LINUX) += fsdev/ | |
57 | ||
58 | common-obj-y += migration/ | |
59 | ||
60 | common-obj-y += audio/ | |
61 | common-obj-m += audio/ | |
62 | common-obj-y += hw/ | |
63 | ||
64 | common-obj-y += replay/ | |
65 | ||
66 | common-obj-y += ui/ | |
67 | common-obj-m += ui/ | |
68 | common-obj-y += bt-host.o bt-vhci.o | |
69 | bt-host.o-cflags := $(BLUEZ_CFLAGS) | |
70 | ||
71 | common-obj-y += dma-helpers.o | |
72 | common-obj-y += vl.o | |
73 | vl.o-cflags := $(GPROF_CFLAGS) $(SDL_CFLAGS) | |
74 | common-obj-$(CONFIG_TPM) += tpm.o | |
75 | ||
76 | common-obj-y += backends/ | |
77 | common-obj-y += chardev/ | |
78 | ||
79 | common-obj-$(CONFIG_SECCOMP) += qemu-seccomp.o | |
80 | qemu-seccomp.o-cflags := $(SECCOMP_CFLAGS) | |
81 | qemu-seccomp.o-libs := $(SECCOMP_LIBS) | |
82 | ||
83 | common-obj-$(CONFIG_FDT) += device_tree.o | |
84 | ||
85 | ###################################################################### | |
86 | # qapi | |
87 | ||
88 | common-obj-y += qapi/ | |
89 | endif | |
90 | ||
91 | ####################################################################### | |
92 | # Target-independent parts used in system and user emulation | |
93 | common-obj-y += cpus-common.o | |
94 | common-obj-y += hw/ | |
95 | common-obj-y += qom/ | |
96 | common-obj-y += disas/ | |
97 | ||
98 | ###################################################################### | |
99 | # Resource file for Windows executables | |
100 | version-obj-$(CONFIG_WIN32) += $(BUILD_DIR)/version.o | |
101 | ||
102 | ###################################################################### | |
103 | # tracing | |
104 | util-obj-y += trace/ | |
105 | ||
106 | ###################################################################### | |
107 | # guest agent | |
108 | ||
109 | # FIXME: a few definitions from qapi/qapi-types.o and | |
110 | # qapi/qapi-visit.o are needed by libqemuutil.a. These should be | |
111 | # extracted into a QAPI schema module, or perhaps a separate schema. | |
112 | qga-obj-y = qga/ | |
113 | qga-vss-dll-obj-y = qga/ | |
114 | ||
115 | ###################################################################### | |
116 | # contrib | |
117 | elf2dmp-obj-y = contrib/elf2dmp/ | |
118 | ivshmem-client-obj-$(CONFIG_IVSHMEM) = contrib/ivshmem-client/ | |
119 | ivshmem-server-obj-$(CONFIG_IVSHMEM) = contrib/ivshmem-server/ | |
120 | libvhost-user-obj-y = contrib/libvhost-user/ | |
121 | vhost-user-scsi.o-cflags := $(LIBISCSI_CFLAGS) | |
122 | vhost-user-scsi.o-libs := $(LIBISCSI_LIBS) | |
123 | vhost-user-scsi-obj-y = contrib/vhost-user-scsi/ | |
124 | vhost-user-blk-obj-y = contrib/vhost-user-blk/ | |
125 | rdmacm-mux-obj-y = contrib/rdmacm-mux/ | |
126 | vhost-user-input-obj-y = contrib/vhost-user-input/ | |
127 | vhost-user-gpu-obj-y = contrib/vhost-user-gpu/ | |
128 | ||
129 | ###################################################################### | |
130 | trace-events-subdirs = | |
131 | trace-events-subdirs += accel/kvm | |
132 | trace-events-subdirs += accel/tcg | |
133 | trace-events-subdirs += crypto | |
134 | trace-events-subdirs += monitor | |
135 | ifeq ($(CONFIG_USER_ONLY),y) | |
136 | trace-events-subdirs += linux-user | |
137 | endif | |
138 | ifeq ($(CONFIG_BLOCK),y) | |
139 | trace-events-subdirs += authz | |
140 | trace-events-subdirs += block | |
141 | trace-events-subdirs += io | |
142 | trace-events-subdirs += nbd | |
143 | trace-events-subdirs += scsi | |
144 | endif | |
145 | ifeq ($(CONFIG_SOFTMMU),y) | |
146 | trace-events-subdirs += chardev | |
147 | trace-events-subdirs += audio | |
148 | trace-events-subdirs += hw/9pfs | |
149 | trace-events-subdirs += hw/acpi | |
150 | trace-events-subdirs += hw/alpha | |
151 | trace-events-subdirs += hw/arm | |
152 | trace-events-subdirs += hw/audio | |
153 | trace-events-subdirs += hw/block | |
154 | trace-events-subdirs += hw/block/dataplane | |
155 | trace-events-subdirs += hw/char | |
156 | trace-events-subdirs += hw/dma | |
157 | trace-events-subdirs += hw/hppa | |
158 | trace-events-subdirs += hw/i2c | |
159 | trace-events-subdirs += hw/i386 | |
160 | trace-events-subdirs += hw/i386/xen | |
161 | trace-events-subdirs += hw/ide | |
162 | trace-events-subdirs += hw/input | |
163 | trace-events-subdirs += hw/intc | |
164 | trace-events-subdirs += hw/isa | |
165 | trace-events-subdirs += hw/mem | |
166 | trace-events-subdirs += hw/mips | |
167 | trace-events-subdirs += hw/misc | |
168 | trace-events-subdirs += hw/misc/macio | |
169 | trace-events-subdirs += hw/net | |
170 | trace-events-subdirs += hw/nvram | |
171 | trace-events-subdirs += hw/pci | |
172 | trace-events-subdirs += hw/pci-host | |
173 | trace-events-subdirs += hw/ppc | |
174 | trace-events-subdirs += hw/rdma | |
175 | trace-events-subdirs += hw/rdma/vmw | |
176 | trace-events-subdirs += hw/s390x | |
177 | trace-events-subdirs += hw/scsi | |
178 | trace-events-subdirs += hw/sd | |
179 | trace-events-subdirs += hw/sparc | |
180 | trace-events-subdirs += hw/sparc64 | |
181 | trace-events-subdirs += hw/timer | |
182 | trace-events-subdirs += hw/tpm | |
183 | trace-events-subdirs += hw/usb | |
184 | trace-events-subdirs += hw/vfio | |
185 | trace-events-subdirs += hw/virtio | |
186 | trace-events-subdirs += hw/watchdog | |
187 | trace-events-subdirs += hw/xen | |
188 | trace-events-subdirs += hw/gpio | |
189 | trace-events-subdirs += hw/riscv | |
190 | trace-events-subdirs += migration | |
191 | trace-events-subdirs += net | |
192 | trace-events-subdirs += ui | |
193 | endif | |
194 | trace-events-subdirs += hw/display | |
195 | trace-events-subdirs += qapi | |
196 | trace-events-subdirs += qom | |
197 | trace-events-subdirs += target/arm | |
198 | trace-events-subdirs += target/hppa | |
199 | trace-events-subdirs += target/i386 | |
200 | trace-events-subdirs += target/mips | |
201 | trace-events-subdirs += target/ppc | |
202 | trace-events-subdirs += target/riscv | |
203 | trace-events-subdirs += target/s390x | |
204 | trace-events-subdirs += target/sparc | |
205 | trace-events-subdirs += util | |
206 | ||
207 | trace-events-files = $(SRC_PATH)/trace-events $(trace-events-subdirs:%=$(SRC_PATH)/%/trace-events) | |
208 | ||
209 | trace-obj-y = trace-root.o | |
210 | trace-obj-y += $(trace-events-subdirs:%=%/trace.o) | |
211 | trace-obj-$(CONFIG_TRACE_UST) += trace-ust-all.o | |
212 | trace-obj-$(CONFIG_TRACE_DTRACE) += trace-dtrace-root.o | |
213 | trace-obj-$(CONFIG_TRACE_DTRACE) += $(trace-events-subdirs:%=%/trace-dtrace.o) |