]> git.proxmox.com Git - mirror_qemu.git/blob - Makefile.objs
meson: convert root directory to Meson
[mirror_qemu.git] / Makefile.objs
1 #######################################################################
2 # Common libraries for tools and emulators
3 qom-obj-y = qom/libqom.fa
4
5 #######################################################################
6 # code used by both qemu system emulation and qemu-img
7
8 ifeq ($(call lor,$(CONFIG_SOFTMMU),$(CONFIG_TOOLS)),y)
9
10 authz-obj-y = authz/libauthz.fa
11 authz/libauthz.fa-libs = $(if $(CONFIG_AUTH_PAM),-lpam)
12
13 block-obj-y += libblock.fa
14
15 libblock.fa-libs = $(ZSTD_LIBS)
16 libblock.fa-libs += $(LIBNFS_LIBS)
17 libblock.fa-libs += $(LIBISCSI_LIBS)
18 libblock.fa-libs += $(CURL_LIBS)
19 libblock.fa-libs += $(RBD_LIBS)
20 libblock.fa-libs += $(GLUSTERFS_LIBS)
21 libblock.fa-libs += $(VXHS_LIBS)
22 libblock.fa-libs += $(LIBSSH_LIBS)
23 libblock.fa-libs += $(BZIP2_LIBS)
24 libblock.fa-libs += $(LZFSE_LIBS)
25 libblock.fa-libs += $(if $(CONFIG_LINUX_AIO),-laio)
26 libblock.fa-libs += $(LIBXML2_LIBS)
27
28 chardev-obj-y = chardev/libchardev.fa
29
30 crypto-obj-y = crypto/libcrypto.fa
31
32 io-obj-y = io/libio.fa
33
34 endif # CONFIG_SOFTMMU or CONFIG_TOOLS
35
36 #######################################################################
37 # storage-daemon-obj-y is code used by qemu-storage-daemon (these objects are
38 # used for system emulation, too, but specified separately there)
39
40 storage-daemon-obj-y = block/ monitor/ qapi/ qom/ storage-daemon/
41 storage-daemon-obj-y += blockdev.o blockdev-nbd.o iothread.o job-qmp.o
42 storage-daemon-obj-$(CONFIG_WIN32) += os-win32.o
43 storage-daemon-obj-$(CONFIG_POSIX) += os-posix.o
44
45 ######################################################################
46 # Target independent part of system emulation. The long term path is to
47 # suppress *all* target specific code in case of system emulation, i.e. a
48 # single QEMU executable should support all CPUs and machines.
49
50 ifeq ($(CONFIG_SOFTMMU),y)
51 common-obj-y = dump/
52 common-obj-y += monitor/
53 common-obj-y += net/
54 common-obj-$(CONFIG_LINUX) += fsdev/
55
56 common-obj-y += accel/
57 common-obj-y += migration/
58
59 common-obj-$(CONFIG_AUDIO_ALSA) += audio-alsa$(DSOSUF)
60 common-obj-$(CONFIG_AUDIO_OSS) += audio-oss$(DSOSUF)
61 common-obj-$(CONFIG_AUDIO_PA) += audio-pa$(DSOSUF)
62 common-obj-$(CONFIG_AUDIO_SDL) += audio-sdl$(DSOSUF)
63
64 common-obj-$(if $(CONFIG_CURSES),m) += ui-curses$(DSOSUF)
65 common-obj-$(if $(CONFIG_GTK),m) += ui-gtk$(DSOSUF)
66 common-obj-$(if $(CONFIG_SDL),m) += ui-sdl$(DSOSUF)
67 common-obj-$(if $(CONFIG_SPICE),m) += ui-spice-app$(DSOSUF)
68
69 common-obj-$(if $(CONFIG_CURL),m) += block-curl$(DSOSUF)
70 common-obj-$(if $(CONFIG_GLUSTERFS),m) += block-gluster$(DSOSUF)
71 common-obj-$(if $(CONFIG_LIBISCSI),m) += block-iscsi$(DSOSUF)
72 common-obj-$(if $(CONFIG_LIBNFS),m) += block-nfs$(DSOSUF)
73 common-obj-$(if $(CONFIG_LIBSSH),m) += block-ssh$(DSOSUF)
74 common-obj-$(if $(CONFIG_RBD),m) += block-rbd$(DSOSUF)
75
76 common-obj-$(if $(CONFIG_LZFSE),m) += block-dmg-lzfse$(DSOSUF)
77 common-obj-$(if $(and $(CONFIG_BZIP2),$(CONFIG_DMG)),m) += block-dmg-bz2$(DSOSUF)
78
79 common-obj-y += hw/
80 common-obj-m += hw/
81
82 common-obj-y += replay/
83 common-obj-y += backends/
84
85 common-obj-y += qapi/
86
87 endif # CONFIG_SOFTMMU
88
89 #######################################################################
90 # Target-independent parts used in system and user emulation
91
92 common-obj-y += hw/
93 common-obj-y += qom/
94 common-obj-y += disas/
95
96 ######################################################################
97 # Resource file for Windows executables
98 version-obj-$(CONFIG_WIN32) += $(BUILD_DIR)/version.o