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 |
Daniel P. Berrange | b917da4 | 2015-10-31 14:39:52 +0900 | [diff] [blame] | 3 | stub-obj-y = stubs/ crypto/ |
Markus Armbruster | 39a1815 | 2015-09-16 13:06:28 +0200 | [diff] [blame] | 4 | util-obj-y = util/ qobject/ qapi/ |
| 5 | util-obj-y += qmp-introspect.o qapi-types.o qapi-visit.o qapi-event.o |
Paolo Bonzini | 3bc2f57 | 2012-11-16 18:35:27 +0100 | [diff] [blame] | 6 | |
| 7 | ####################################################################### |
Andreas Färber | 0e8c921 | 2010-01-06 20:24:05 +0100 | [diff] [blame] | 8 | # block-obj-y is code used by both qemu system emulation and qemu-img |
| 9 | |
Paolo Bonzini | f157ebb | 2012-12-20 16:09:36 +0100 | [diff] [blame] | 10 | block-obj-y = async.o thread-pool.o |
Fam Zheng | 798bfe0 | 2016-01-14 16:41:02 +0800 | [diff] [blame] | 11 | block-obj-y += nbd/ |
| 12 | block-obj-y += block.o blockjob.o |
Paolo Bonzini | f157ebb | 2012-12-20 16:09:36 +0100 | [diff] [blame] | 13 | block-obj-y += main-loop.o iohandler.o qemu-timer.o |
| 14 | block-obj-$(CONFIG_POSIX) += aio-posix.o |
| 15 | block-obj-$(CONFIG_WIN32) += aio-win32.o |
Paolo Bonzini | 7456e4c | 2012-05-22 13:44:39 +0200 | [diff] [blame] | 16 | block-obj-y += block/ |
Kevin Wolf | 587da2c | 2013-06-05 14:19:41 +0200 | [diff] [blame] | 17 | block-obj-y += qemu-io-cmds.o |
Andreas Färber | 0e8c921 | 2010-01-06 20:24:05 +0100 | [diff] [blame] | 18 | |
Fam Zheng | cc47569 | 2014-02-10 14:48:59 +0800 | [diff] [blame] | 19 | block-obj-m = block/ |
| 20 | |
Daniel P. Berrange | fb37726 | 2015-09-02 10:57:27 +0100 | [diff] [blame] | 21 | ####################################################################### |
| 22 | # crypto-obj-y is code used by both qemu system emulation and qemu-img |
| 23 | |
| 24 | crypto-obj-y = crypto/ |
| 25 | crypto-aes-obj-y = crypto/ |
Gautham R Shenoy | 74db920 | 2010-04-29 17:44:43 +0530 | [diff] [blame] | 26 | |
Daniel P. Berrange | 0c7012e | 2015-09-02 11:18:16 +0100 | [diff] [blame] | 27 | ####################################################################### |
| 28 | # qom-obj-y is code used by both qemu system emulation and qemu-img |
| 29 | |
| 30 | qom-obj-y = qom/ |
| 31 | |
Daniel P. Berrange | 666a3af | 2015-02-27 16:19:33 +0000 | [diff] [blame] | 32 | ####################################################################### |
| 33 | # io-obj-y is code used by both qemu system emulation and qemu-img |
| 34 | |
| 35 | io-obj-y = io/ |
| 36 | |
Andreas Färber | 0e8c921 | 2010-01-06 20:24:05 +0100 | [diff] [blame] | 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) |
Fam Zheng | ba1183d | 2014-02-10 14:48:52 +0800 | [diff] [blame] | 43 | common-obj-y = blockdev.o blockdev-nbd.o block/ |
Stefan Hajnoczi | be8d853 | 2014-03-03 11:30:05 +0100 | [diff] [blame] | 44 | common-obj-y += iothread.o |
Paolo Bonzini | fd9400b | 2012-10-24 11:27:28 +0200 | [diff] [blame] | 45 | common-obj-y += net/ |
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 | |
Dr. David Alan Gilbert | 60fe637 | 2014-12-12 11:13:38 +0000 | [diff] [blame] | 52 | common-obj-y += migration/ |
Avi Kivity | c5705a7 | 2011-12-20 15:59:12 +0200 | [diff] [blame] | 53 | common-obj-y += qemu-char.o #aio.o |
Dr. David Alan Gilbert | 60fe637 | 2014-12-12 11:13:38 +0000 | [diff] [blame] | 54 | common-obj-y += page_cache.o |
Alexander Graf | 190c882 | 2015-01-22 15:01:37 +0100 | [diff] [blame] | 55 | common-obj-y += qjson.o |
Andreas Färber | 0e8c921 | 2010-01-06 20:24:05 +0100 | [diff] [blame] | 56 | |
Paolo Bonzini | 8867aef | 2012-05-22 13:48:15 +0200 | [diff] [blame] | 57 | common-obj-$(CONFIG_SPICE) += spice-qemu-char.o |
Paolo Bonzini | b0b68fc | 2012-05-22 13:49:02 +0200 | [diff] [blame] | 58 | |
| 59 | common-obj-y += audio/ |
Paolo Bonzini | 3d5a3f9 | 2012-05-29 11:08:47 +0200 | [diff] [blame] | 60 | common-obj-y += hw/ |
Eduardo Habkost | a1a9cb0 | 2014-09-26 17:45:17 -0300 | [diff] [blame] | 61 | common-obj-y += accel.o |
Paolo Bonzini | 6f99198 | 2012-12-17 18:17:08 +0100 | [diff] [blame] | 62 | |
Pavel Dovgalyuk | d73abd6 | 2015-09-17 19:23:37 +0300 | [diff] [blame] | 63 | common-obj-y += replay/ |
| 64 | |
Paolo Bonzini | 8867aef | 2012-05-22 13:48:15 +0200 | [diff] [blame] | 65 | common-obj-y += ui/ |
Paolo Bonzini | 3d5a3f9 | 2012-05-29 11:08:47 +0200 | [diff] [blame] | 66 | common-obj-y += bt-host.o bt-vhci.o |
Michael Tokarev | 849d828 | 2014-05-02 15:40:53 +0400 | [diff] [blame] | 67 | bt-host.o-cflags := $(BLUEZ_CFLAGS) |
Corentin Chary | 3e230dd | 2010-07-07 20:57:52 +0200 | [diff] [blame] | 68 | |
Stefan Weil | c9159fe | 2012-10-05 19:39:33 +0200 | [diff] [blame] | 69 | common-obj-y += dma-helpers.o |
Stefan Weil | c9159fe | 2012-10-05 19:39:33 +0200 | [diff] [blame] | 70 | common-obj-y += vl.o |
Michael Tokarev | 849d828 | 2014-05-02 15:40:53 +0400 | [diff] [blame] | 71 | vl.o-cflags := $(GPROF_CFLAGS) $(SDL_CFLAGS) |
Paolo Bonzini | bdee56f | 2013-04-02 18:28:41 +0200 | [diff] [blame] | 72 | common-obj-y += tpm.o |
Andreas Färber | 0e8c921 | 2010-01-06 20:24:05 +0100 | [diff] [blame] | 73 | |
Paolo Bonzini | 4c69605 | 2012-05-22 13:49:43 +0200 | [diff] [blame] | 74 | common-obj-$(CONFIG_SLIRP) += slirp/ |
Andreas Färber | 0e8c921 | 2010-01-06 20:24:05 +0100 | [diff] [blame] | 75 | |
Anthony Liguori | a9b7b2a | 2012-06-25 10:03:47 -0500 | [diff] [blame] | 76 | common-obj-y += backends/ |
| 77 | |
Paolo Bonzini | 737f351 | 2013-01-19 11:06:46 +0100 | [diff] [blame] | 78 | common-obj-$(CONFIG_SECCOMP) += qemu-seccomp.o |
Eduardo Otubo | f794573 | 2012-08-14 18:44:05 -0300 | [diff] [blame] | 79 | |
Peter Crosthwaite | 7df057b | 2015-05-24 13:20:14 -0700 | [diff] [blame] | 80 | common-obj-$(CONFIG_FDT) += device_tree.o |
| 81 | |
Michael Roth | 2345c77 | 2011-07-19 14:50:32 -0500 | [diff] [blame] | 82 | ###################################################################### |
| 83 | # qapi |
| 84 | |
Eduardo Habkost | 8e8aba5 | 2013-05-06 13:20:07 -0300 | [diff] [blame] | 85 | common-obj-y += qmp-marshal.o |
Markus Armbruster | 39a1815 | 2015-09-16 13:06:28 +0200 | [diff] [blame] | 86 | common-obj-y += qmp-introspect.o |
Anthony Liguori | 48a32be | 2011-09-02 12:34:48 -0500 | [diff] [blame] | 87 | common-obj-y += qmp.o hmp.o |
Paolo Bonzini | 0008234 | 2013-01-19 11:06:47 +0100 | [diff] [blame] | 88 | endif |
Anthony Liguori | e319360 | 2011-09-02 12:34:47 -0500 | [diff] [blame] | 89 | |
Paolo Bonzini | 9444e9e | 2012-12-20 15:24:49 +0100 | [diff] [blame] | 90 | ####################################################################### |
| 91 | # Target-independent parts used in system and user emulation |
Paolo Bonzini | 0008234 | 2013-01-19 11:06:47 +0100 | [diff] [blame] | 92 | common-obj-y += tcg-runtime.o |
| 93 | common-obj-y += hw/ |
| 94 | common-obj-y += qom/ |
| 95 | common-obj-y += disas/ |
Andreas Färber | ce008c1 | 2012-03-04 21:32:36 +0100 | [diff] [blame] | 96 | |
Michael Roth | 957f1f9 | 2011-08-11 15:38:12 -0500 | [diff] [blame] | 97 | ###################################################################### |
Stefan Weil | 0b516ef | 2013-08-08 20:18:07 +0200 | [diff] [blame] | 98 | # Resource file for Windows executables |
| 99 | version-obj-$(CONFIG_WIN32) += $(BUILD_DIR)/version.o |
| 100 | version-lobj-$(CONFIG_WIN32) += $(BUILD_DIR)/version.lo |
| 101 | |
| 102 | ###################################################################### |
Lluís Vilanova | 341ea69 | 2014-05-30 14:11:56 +0200 | [diff] [blame] | 103 | # tracing |
| 104 | util-obj-y += trace/ |
| 105 | target-obj-y += trace/ |
| 106 | |
| 107 | ###################################################################### |
Michael Roth | 957f1f9 | 2011-08-11 15:38:12 -0500 | [diff] [blame] | 108 | # guest agent |
| 109 | |
Paolo Bonzini | 59cacde | 2012-12-20 15:03:18 +0100 | [diff] [blame] | 110 | # FIXME: a few definitions from qapi-types.o/qapi-visit.o are needed |
| 111 | # by libqemuutil.a. These should be moved to a separate .json schema. |
Fam Zheng | 169a24a | 2014-08-07 10:34:41 +0800 | [diff] [blame] | 112 | qga-obj-y = qga/ |
Tomoki Sekiyama | b39297a | 2013-08-07 11:40:18 -0400 | [diff] [blame] | 113 | qga-vss-dll-obj-y = qga/ |
David Marchand | a75eb03 | 2014-09-08 11:17:48 +0200 | [diff] [blame] | 114 | |
| 115 | ###################################################################### |
| 116 | # contrib |
| 117 | ivshmem-client-obj-y = contrib/ivshmem-client/ |
| 118 | ivshmem-server-obj-y = contrib/ivshmem-server/ |