Andreas Färber | 0e8c921 | 2010-01-06 20:24:05 +0100 | [diff] [blame] | 1 | ####################################################################### |
Paolo Bonzini | a372823 | 2012-12-20 16:10:26 +0100 | [diff] [blame] | 2 | # Common libraries for tools and emulators |
Paolo Bonzini | 3bc2f57 | 2012-11-16 18:35:27 +0100 | [diff] [blame] | 3 | stub-obj-y = stubs/ |
Paolo Bonzini | ff667e2 | 2012-12-21 09:45:20 +0100 | [diff] [blame] | 4 | util-obj-y = util/ qobject/ qapi/ trace/ |
Paolo Bonzini | 3bc2f57 | 2012-11-16 18:35:27 +0100 | [diff] [blame] | 5 | |
| 6 | ####################################################################### |
Andreas Färber | 0e8c921 | 2010-01-06 20:24:05 +0100 | [diff] [blame] | 7 | # block-obj-y is code used by both qemu system emulation and qemu-img |
| 8 | |
Paolo Bonzini | f157ebb | 2012-12-20 16:09:36 +0100 | [diff] [blame] | 9 | block-obj-y = async.o thread-pool.o |
| 10 | block-obj-y += nbd.o block.o blockjob.o |
Paolo Bonzini | f157ebb | 2012-12-20 16:09:36 +0100 | [diff] [blame] | 11 | block-obj-y += main-loop.o iohandler.o qemu-timer.o |
| 12 | block-obj-$(CONFIG_POSIX) += aio-posix.o |
| 13 | block-obj-$(CONFIG_WIN32) += aio-win32.o |
Paolo Bonzini | 7456e4c | 2012-05-22 13:44:39 +0200 | [diff] [blame] | 14 | block-obj-y += block/ |
Paolo Bonzini | 576d550 | 2012-12-20 15:27:51 +0100 | [diff] [blame] | 15 | block-obj-y += qapi-types.o qapi-visit.o |
Andreas Färber | 0e8c921 | 2010-01-06 20:24:05 +0100 | [diff] [blame] | 16 | |
Paolo Bonzini | 84ecb7a | 2012-12-20 17:38:14 +0100 | [diff] [blame] | 17 | block-obj-y += qemu-coroutine.o qemu-coroutine-lock.o qemu-coroutine-io.o |
| 18 | block-obj-y += qemu-coroutine-sleep.o |
Peter Maydell | 7c2acc7 | 2013-04-08 12:11:27 +0100 | [diff] [blame] | 19 | block-obj-y += coroutine-$(CONFIG_COROUTINE_BACKEND).o |
Paolo Bonzini | 84ecb7a | 2012-12-20 17:38:14 +0100 | [diff] [blame] | 20 | |
Aneesh Kumar K.V | 9fe1ebe | 2011-06-01 12:35:13 +0530 | [diff] [blame] | 21 | ifeq ($(CONFIG_VIRTIO)$(CONFIG_VIRTFS)$(CONFIG_PCI),yyy) |
Paul Brook | 01af7da | 2010-11-26 22:08:48 +0000 | [diff] [blame] | 22 | # Lots of the fsdev/9pcode is pulled in by vl.c via qemu_fsdev_add. |
| 23 | # only pull in the actual virtio-9p device if we also enabled virtio. |
| 24 | CONFIG_REALLY_VIRTFS=y |
| 25 | endif |
Gautham R Shenoy | 74db920 | 2010-04-29 17:44:43 +0530 | [diff] [blame] | 26 | |
Andreas Färber | 0e8c921 | 2010-01-06 20:24:05 +0100 | [diff] [blame] | 27 | ###################################################################### |
Paolo Bonzini | 6598001 | 2013-01-19 11:06:45 +0100 | [diff] [blame] | 28 | # smartcard |
| 29 | |
| 30 | libcacard-y += libcacard/cac.o libcacard/event.o |
| 31 | libcacard-y += libcacard/vcard.o libcacard/vreader.o |
| 32 | libcacard-y += libcacard/vcard_emul_nss.o |
| 33 | libcacard-y += libcacard/vcard_emul_type.o |
| 34 | libcacard-y += libcacard/card_7816.o |
Alon Levy | 0b6a16c | 2013-03-05 16:27:43 +0200 | [diff] [blame] | 35 | libcacard-y += libcacard/vcardt.o |
Paolo Bonzini | 6598001 | 2013-01-19 11:06:45 +0100 | [diff] [blame] | 36 | |
| 37 | ###################################################################### |
Chen Wei-Ren | 050d994 | 2011-11-15 20:47:11 +0800 | [diff] [blame] | 38 | # Target independent part of system emulation. The long term path is to |
| 39 | # suppress *all* target specific code in case of system emulation, i.e. a |
| 40 | # single QEMU executable should support all CPUs and machines. |
Andreas Färber | 0e8c921 | 2010-01-06 20:24:05 +0100 | [diff] [blame] | 41 | |
Paolo Bonzini | 0008234 | 2013-01-19 11:06:47 +0100 | [diff] [blame] | 42 | ifeq ($(CONFIG_SOFTMMU),y) |
Paolo Bonzini | 6dd844d | 2012-08-22 16:43:07 +0200 | [diff] [blame] | 43 | common-obj-y = $(block-obj-y) blockdev.o blockdev-nbd.o block/ |
Paolo Bonzini | fd9400b | 2012-10-24 11:27:28 +0200 | [diff] [blame] | 44 | common-obj-y += net/ |
Paolo Bonzini | 28ecbae | 2012-11-28 12:06:30 +0100 | [diff] [blame] | 45 | common-obj-y += readline.o |
Paolo Bonzini | 1559e0d | 2013-02-04 17:20:47 +0100 | [diff] [blame] | 46 | common-obj-y += qdev-monitor.o device-hotplug.o |
Blue Swirl | b0cb640a | 2010-06-12 05:49:30 +0000 | [diff] [blame] | 47 | common-obj-$(CONFIG_WIN32) += os-win32.o |
| 48 | common-obj-$(CONFIG_POSIX) += os-posix.o |
Gerd Hoffmann | 254e595 | 2010-05-21 11:54:32 +0200 | [diff] [blame] | 49 | |
Paolo Bonzini | ee20477 | 2012-05-22 13:46:08 +0200 | [diff] [blame] | 50 | common-obj-$(CONFIG_LINUX) += fsdev/ |
Paolo Bonzini | ee20477 | 2012-05-22 13:46:08 +0200 | [diff] [blame] | 51 | |
Juan Quintela | 0d82d0e | 2012-10-03 14:18:33 +0200 | [diff] [blame] | 52 | common-obj-y += migration.o migration-tcp.o |
Avi Kivity | c5705a7 | 2011-12-20 15:59:12 +0200 | [diff] [blame] | 53 | common-obj-y += qemu-char.o #aio.o |
Paolo Bonzini | f157ebb | 2012-12-20 16:09:36 +0100 | [diff] [blame] | 54 | common-obj-y += block-migration.o |
Orit Wasserman | ba2e28e | 2013-01-31 09:12:15 +0200 | [diff] [blame] | 55 | common-obj-y += page_cache.o xbzrle.o |
Andreas Färber | 0e8c921 | 2010-01-06 20:24:05 +0100 | [diff] [blame] | 56 | |
Andreas Färber | 0e8c921 | 2010-01-06 20:24:05 +0100 | [diff] [blame] | 57 | common-obj-$(CONFIG_POSIX) += migration-exec.o migration-unix.o migration-fd.o |
| 58 | |
Paolo Bonzini | 8867aef | 2012-05-22 13:48:15 +0200 | [diff] [blame] | 59 | common-obj-$(CONFIG_SPICE) += spice-qemu-char.o |
Paolo Bonzini | b0b68fc | 2012-05-22 13:49:02 +0200 | [diff] [blame] | 60 | |
| 61 | common-obj-y += audio/ |
Paolo Bonzini | 3d5a3f9 | 2012-05-29 11:08:47 +0200 | [diff] [blame] | 62 | common-obj-y += hw/ |
Paolo Bonzini | 6f99198 | 2012-12-17 18:17:08 +0100 | [diff] [blame] | 63 | |
Paolo Bonzini | 8867aef | 2012-05-22 13:48:15 +0200 | [diff] [blame] | 64 | common-obj-y += ui/ |
Paolo Bonzini | 3d5a3f9 | 2012-05-29 11:08:47 +0200 | [diff] [blame] | 65 | common-obj-y += bt-host.o bt-vhci.o |
Corentin Chary | 3e230dd | 2010-07-07 20:57:52 +0200 | [diff] [blame] | 66 | |
Stefan Weil | c9159fe | 2012-10-05 19:39:33 +0200 | [diff] [blame] | 67 | common-obj-y += dma-helpers.o |
Stefan Weil | c9159fe | 2012-10-05 19:39:33 +0200 | [diff] [blame] | 68 | common-obj-y += vl.o |
Paolo Bonzini | bdee56f | 2013-04-02 18:28:41 +0200 | [diff] [blame] | 69 | common-obj-y += tpm.o |
Andreas Färber | 0e8c921 | 2010-01-06 20:24:05 +0100 | [diff] [blame] | 70 | |
Paolo Bonzini | 4c69605 | 2012-05-22 13:49:43 +0200 | [diff] [blame] | 71 | common-obj-$(CONFIG_SLIRP) += slirp/ |
Andreas Färber | 0e8c921 | 2010-01-06 20:24:05 +0100 | [diff] [blame] | 72 | |
Anthony Liguori | a9b7b2a | 2012-06-25 10:03:47 -0500 | [diff] [blame] | 73 | common-obj-y += backends/ |
| 74 | |
Paolo Bonzini | 737f351 | 2013-01-19 11:06:46 +0100 | [diff] [blame] | 75 | common-obj-$(CONFIG_SECCOMP) += qemu-seccomp.o |
Eduardo Otubo | f794573 | 2012-08-14 18:44:05 -0300 | [diff] [blame] | 76 | |
Paolo Bonzini | 00c705f | 2012-05-29 11:40:24 +0200 | [diff] [blame] | 77 | common-obj-$(CONFIG_SMARTCARD_NSS) += $(libcacard-y) |
Robert Relyea | 111a38b | 2010-11-28 16:36:38 +0200 | [diff] [blame] | 78 | |
Michael Roth | 2345c77 | 2011-07-19 14:50:32 -0500 | [diff] [blame] | 79 | ###################################################################### |
| 80 | # qapi |
| 81 | |
Eduardo Habkost | 8e8aba5 | 2013-05-06 13:20:07 -0300 | [diff] [blame] | 82 | common-obj-y += qmp-marshal.o |
Anthony Liguori | 48a32be | 2011-09-02 12:34:48 -0500 | [diff] [blame] | 83 | common-obj-y += qmp.o hmp.o |
Paolo Bonzini | 0008234 | 2013-01-19 11:06:47 +0100 | [diff] [blame] | 84 | endif |
Anthony Liguori | e319360 | 2011-09-02 12:34:47 -0500 | [diff] [blame] | 85 | |
Eduardo Habkost | 8e8aba5 | 2013-05-06 13:20:07 -0300 | [diff] [blame] | 86 | ###################################################################### |
| 87 | # some qapi visitors are used by both system and user emulation: |
| 88 | |
| 89 | common-obj-y += qapi-visit.o qapi-types.o |
| 90 | |
Paolo Bonzini | 9444e9e | 2012-12-20 15:24:49 +0100 | [diff] [blame] | 91 | ####################################################################### |
| 92 | # Target-independent parts used in system and user emulation |
Paolo Bonzini | 0008234 | 2013-01-19 11:06:47 +0100 | [diff] [blame] | 93 | common-obj-y += qemu-log.o |
| 94 | common-obj-y += tcg-runtime.o |
| 95 | common-obj-y += hw/ |
| 96 | common-obj-y += qom/ |
| 97 | common-obj-y += disas/ |
Andreas Färber | ce008c1 | 2012-03-04 21:32:36 +0100 | [diff] [blame] | 98 | |
Michael Roth | 957f1f9 | 2011-08-11 15:38:12 -0500 | [diff] [blame] | 99 | ###################################################################### |
| 100 | # guest agent |
| 101 | |
Paolo Bonzini | 59cacde | 2012-12-20 15:03:18 +0100 | [diff] [blame] | 102 | # FIXME: a few definitions from qapi-types.o/qapi-visit.o are needed |
| 103 | # by libqemuutil.a. These should be moved to a separate .json schema. |
| 104 | qga-obj-y = qga/ qapi-types.o qapi-visit.o |
Michael Roth | 957f1f9 | 2011-08-11 15:38:12 -0500 | [diff] [blame] | 105 | |
Blue Swirl | ad96090 | 2010-03-29 19:23:52 +0000 | [diff] [blame] | 106 | vl.o: QEMU_CFLAGS+=$(GPROF_CFLAGS) |
| 107 | |
| 108 | vl.o: QEMU_CFLAGS+=$(SDL_CFLAGS) |
| 109 | |
Anthony Liguori | 1401530 | 2011-08-20 22:18:37 -0500 | [diff] [blame] | 110 | QEMU_CFLAGS+=$(GLIB_CFLAGS) |
| 111 | |
Paolo Bonzini | 7f07b9c | 2012-05-22 13:42:53 +0200 | [diff] [blame] | 112 | nested-vars += \ |
Paolo Bonzini | 3bc2f57 | 2012-11-16 18:35:27 +0100 | [diff] [blame] | 113 | stub-obj-y \ |
Paolo Bonzini | baacf04 | 2012-12-20 15:58:44 +0100 | [diff] [blame] | 114 | util-obj-y \ |
Paolo Bonzini | 4eb7ba8 | 2012-05-22 13:50:58 +0200 | [diff] [blame] | 115 | qga-obj-y \ |
Paolo Bonzini | 69758c2 | 2012-09-19 15:11:05 +0200 | [diff] [blame] | 116 | block-obj-y \ |
Paolo Bonzini | 82cb6b0 | 2013-01-19 11:06:48 +0100 | [diff] [blame] | 117 | common-obj-y |
Paolo Bonzini | 99100dc | 2012-05-22 13:41:27 +0200 | [diff] [blame] | 118 | dummy := $(call unnest-vars) |