Statistics
| Branch: | Revision:

root / Makefile.objs @ bf0842b7

History | View | Annotate | Download (4 kB)

1
#######################################################################
2
# Common libraries for tools and emulators
3
stub-obj-y = stubs/
4
util-obj-y = util/ qobject/ qapi/
5

    
6
#######################################################################
7
# coroutines
8
coroutine-obj-y = qemu-coroutine.o qemu-coroutine-lock.o qemu-coroutine-io.o
9
coroutine-obj-y += qemu-coroutine-sleep.o
10

    
11
# If you change this logic, please also check tests/Makefile
12
ifeq ($(CONFIG_UCONTEXT_COROUTINE),y)
13
coroutine-obj-$(CONFIG_POSIX) += coroutine-ucontext.o
14
else
15
ifeq ($(CONFIG_SIGALTSTACK_COROUTINE),y)
16
coroutine-obj-$(CONFIG_POSIX) += coroutine-sigaltstack.o
17
else
18
coroutine-obj-$(CONFIG_POSIX) += coroutine-gthread.o
19
endif
20
endif
21
coroutine-obj-$(CONFIG_WIN32) += coroutine-win32.o
22

    
23
#######################################################################
24
# block-obj-y is code used by both qemu system emulation and qemu-img
25

    
26
block-obj-y = async.o thread-pool.o
27
block-obj-y += nbd.o block.o blockjob.o
28
block-obj-y += $(coroutine-obj-y)
29
block-obj-y += main-loop.o iohandler.o qemu-timer.o
30
block-obj-$(CONFIG_POSIX) += aio-posix.o
31
block-obj-$(CONFIG_WIN32) += aio-win32.o
32
block-obj-y += block/
33
block-obj-y += qapi-types.o qapi-visit.o
34

    
35
ifeq ($(CONFIG_VIRTIO)$(CONFIG_VIRTFS)$(CONFIG_PCI),yyy)
36
# Lots of the fsdev/9pcode is pulled in by vl.c via qemu_fsdev_add.
37
# only pull in the actual virtio-9p device if we also enabled virtio.
38
CONFIG_REALLY_VIRTFS=y
39
endif
40

    
41
######################################################################
42
# Target independent part of system emulation. The long term path is to
43
# suppress *all* target specific code in case of system emulation, i.e. a
44
# single QEMU executable should support all CPUs and machines.
45

    
46
common-obj-y = $(block-obj-y) blockdev.o blockdev-nbd.o block/
47
common-obj-y += net/
48
common-obj-y += readline.o
49
common-obj-$(CONFIG_WIN32) += os-win32.o
50
common-obj-$(CONFIG_POSIX) += os-posix.o
51

    
52
common-obj-$(CONFIG_LINUX) += fsdev/
53
extra-obj-$(CONFIG_LINUX) += fsdev/
54

    
55
common-obj-y += migration.o migration-tcp.o
56
common-obj-y += qemu-char.o #aio.o
57
common-obj-y += block-migration.o
58
common-obj-y += page_cache.o
59

    
60
common-obj-$(CONFIG_POSIX) += migration-exec.o migration-unix.o migration-fd.o
61

    
62
common-obj-$(CONFIG_SPICE) += spice-qemu-char.o
63

    
64
common-obj-y += audio/
65
common-obj-y += hw/
66
extra-obj-y += hw/
67

    
68
common-obj-y += ui/
69
common-obj-y += bt-host.o bt-vhci.o
70

    
71
common-obj-y += dma-helpers.o
72
common-obj-y += qtest.o
73
common-obj-y += vl.o
74

    
75
common-obj-$(CONFIG_SLIRP) += slirp/
76

    
77
common-obj-y += backends/
78

    
79
######################################################################
80
# libseccomp
81
ifeq ($(CONFIG_SECCOMP),y)
82
common-obj-y += qemu-seccomp.o
83
endif
84

    
85
######################################################################
86
# trace
87

    
88
trace-obj-y += trace/
89

    
90
######################################################################
91
# smartcard
92

    
93
libcacard-y += libcacard/cac.o libcacard/event.o
94
libcacard-y += libcacard/vcard.o libcacard/vreader.o
95
libcacard-y += libcacard/vcard_emul_nss.o
96
libcacard-y += libcacard/vcard_emul_type.o
97
libcacard-y += libcacard/card_7816.o
98

    
99
common-obj-$(CONFIG_SMARTCARD_NSS) += $(libcacard-y)
100

    
101
######################################################################
102
# qapi
103

    
104
common-obj-y += qmp-marshal.o qapi-visit.o qapi-types.o
105
common-obj-y += qmp.o hmp.o
106

    
107
#######################################################################
108
# Target-independent parts used in system and user emulation
109
universal-obj-y =
110
universal-obj-y += qemu-log.o
111
universal-obj-y += tcg-runtime.o
112
universal-obj-y += hw/
113
universal-obj-y += qom/
114
universal-obj-y += disas/
115
universal-obj-y += $(trace-obj-y)
116

    
117
######################################################################
118
# guest agent
119

    
120
# FIXME: a few definitions from qapi-types.o/qapi-visit.o are needed
121
# by libqemuutil.a.  These should be moved to a separate .json schema.
122
qga-obj-y = qga/ qapi-types.o qapi-visit.o
123

    
124
vl.o: QEMU_CFLAGS+=$(GPROF_CFLAGS)
125

    
126
vl.o: QEMU_CFLAGS+=$(SDL_CFLAGS)
127

    
128
QEMU_CFLAGS+=$(GLIB_CFLAGS)
129

    
130
nested-vars += \
131
	stub-obj-y \
132
	util-obj-y \
133
	qga-obj-y \
134
	block-obj-y \
135
	common-obj-y \
136
	universal-obj-y \
137
	extra-obj-y \
138
	trace-obj-y
139
dummy := $(call unnest-vars)