2012-11-16 21:35:27 +04:00
|
|
|
#######################################################################
|
2012-12-20 19:10:26 +04:00
|
|
|
# Common libraries for tools and emulators
|
2012-11-16 21:35:27 +04:00
|
|
|
stub-obj-y = stubs/
|
2012-12-21 12:45:20 +04:00
|
|
|
util-obj-y = util/ qobject/ qapi/ trace/
|
2012-11-16 21:35:27 +04:00
|
|
|
|
2010-01-06 22:24:05 +03:00
|
|
|
#######################################################################
|
|
|
|
# block-obj-y is code used by both qemu system emulation and qemu-img
|
|
|
|
|
2012-12-20 19:09:36 +04:00
|
|
|
block-obj-y = async.o thread-pool.o
|
|
|
|
block-obj-y += nbd.o block.o blockjob.o
|
|
|
|
block-obj-y += main-loop.o iohandler.o qemu-timer.o
|
|
|
|
block-obj-$(CONFIG_POSIX) += aio-posix.o
|
|
|
|
block-obj-$(CONFIG_WIN32) += aio-win32.o
|
2012-05-22 15:44:39 +04:00
|
|
|
block-obj-y += block/
|
2012-12-20 18:27:51 +04:00
|
|
|
block-obj-y += qapi-types.o qapi-visit.o
|
2010-01-06 22:24:05 +03:00
|
|
|
|
2012-12-20 20:38:14 +04:00
|
|
|
block-obj-y += qemu-coroutine.o qemu-coroutine-lock.o qemu-coroutine-io.o
|
|
|
|
block-obj-y += qemu-coroutine-sleep.o
|
|
|
|
ifeq ($(CONFIG_UCONTEXT_COROUTINE),y)
|
|
|
|
block-obj-$(CONFIG_POSIX) += coroutine-ucontext.o
|
|
|
|
else
|
|
|
|
ifeq ($(CONFIG_SIGALTSTACK_COROUTINE),y)
|
|
|
|
block-obj-$(CONFIG_POSIX) += coroutine-sigaltstack.o
|
|
|
|
else
|
|
|
|
block-obj-$(CONFIG_POSIX) += coroutine-gthread.o
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
block-obj-$(CONFIG_WIN32) += coroutine-win32.o
|
|
|
|
|
2011-06-01 11:05:13 +04:00
|
|
|
ifeq ($(CONFIG_VIRTIO)$(CONFIG_VIRTFS)$(CONFIG_PCI),yyy)
|
2010-11-27 01:08:48 +03:00
|
|
|
# Lots of the fsdev/9pcode is pulled in by vl.c via qemu_fsdev_add.
|
|
|
|
# only pull in the actual virtio-9p device if we also enabled virtio.
|
|
|
|
CONFIG_REALLY_VIRTFS=y
|
|
|
|
endif
|
2010-04-29 16:14:43 +04:00
|
|
|
|
2013-01-19 14:06:45 +04:00
|
|
|
######################################################################
|
|
|
|
# smartcard
|
|
|
|
|
|
|
|
libcacard-y += libcacard/cac.o libcacard/event.o
|
|
|
|
libcacard-y += libcacard/vcard.o libcacard/vreader.o
|
|
|
|
libcacard-y += libcacard/vcard_emul_nss.o
|
|
|
|
libcacard-y += libcacard/vcard_emul_type.o
|
|
|
|
libcacard-y += libcacard/card_7816.o
|
|
|
|
|
2010-01-06 22:24:05 +03:00
|
|
|
######################################################################
|
2011-11-15 16:47:11 +04:00
|
|
|
# Target independent part of system emulation. The long term path is to
|
|
|
|
# suppress *all* target specific code in case of system emulation, i.e. a
|
|
|
|
# single QEMU executable should support all CPUs and machines.
|
2010-01-06 22:24:05 +03:00
|
|
|
|
2013-01-19 14:06:47 +04:00
|
|
|
ifeq ($(CONFIG_SOFTMMU),y)
|
2012-08-22 18:43:07 +04:00
|
|
|
common-obj-y = $(block-obj-y) blockdev.o blockdev-nbd.o block/
|
2012-10-24 13:27:28 +04:00
|
|
|
common-obj-y += net/
|
2012-11-28 15:06:30 +04:00
|
|
|
common-obj-y += readline.o
|
2010-06-12 09:49:30 +04:00
|
|
|
common-obj-$(CONFIG_WIN32) += os-win32.o
|
|
|
|
common-obj-$(CONFIG_POSIX) += os-posix.o
|
2010-05-21 13:54:32 +04:00
|
|
|
|
2012-05-22 15:46:08 +04:00
|
|
|
common-obj-$(CONFIG_LINUX) += fsdev/
|
|
|
|
|
2012-10-03 16:18:33 +04:00
|
|
|
common-obj-y += migration.o migration-tcp.o
|
2011-12-20 17:59:12 +04:00
|
|
|
common-obj-y += qemu-char.o #aio.o
|
2012-12-20 19:09:36 +04:00
|
|
|
common-obj-y += block-migration.o
|
2013-01-31 11:12:15 +04:00
|
|
|
common-obj-y += page_cache.o xbzrle.o
|
2010-01-06 22:24:05 +03:00
|
|
|
|
|
|
|
common-obj-$(CONFIG_POSIX) += migration-exec.o migration-unix.o migration-fd.o
|
|
|
|
|
2012-05-22 15:48:15 +04:00
|
|
|
common-obj-$(CONFIG_SPICE) += spice-qemu-char.o
|
2012-05-22 15:49:02 +04:00
|
|
|
|
|
|
|
common-obj-y += audio/
|
2012-05-29 13:08:47 +04:00
|
|
|
common-obj-y += hw/
|
2012-12-17 21:17:08 +04:00
|
|
|
|
2012-05-22 15:48:15 +04:00
|
|
|
common-obj-y += ui/
|
2012-05-29 13:08:47 +04:00
|
|
|
common-obj-y += bt-host.o bt-vhci.o
|
2010-07-07 22:57:52 +04:00
|
|
|
|
2012-10-05 21:39:33 +04:00
|
|
|
common-obj-y += dma-helpers.o
|
|
|
|
common-obj-y += vl.o
|
2010-01-06 22:24:05 +03:00
|
|
|
|
2012-05-22 15:49:43 +04:00
|
|
|
common-obj-$(CONFIG_SLIRP) += slirp/
|
2010-01-06 22:24:05 +03:00
|
|
|
|
2012-06-25 19:03:47 +04:00
|
|
|
common-obj-y += backends/
|
|
|
|
|
2013-01-19 14:06:46 +04:00
|
|
|
common-obj-$(CONFIG_SECCOMP) += qemu-seccomp.o
|
2012-08-15 01:44:05 +04:00
|
|
|
|
2012-05-29 13:40:24 +04:00
|
|
|
common-obj-$(CONFIG_SMARTCARD_NSS) += $(libcacard-y)
|
libcacard: initial commit
libcacard emulates a Common Access Card (CAC) which is a standard
for smartcards. It is used by the emulated ccid card introduced in
a following patch. Docs are available in docs/libcacard.txt
Signed-off-by: Alon Levy <alevy@redhat.com>
---
changes from v24->v25:
* Fix out of tree builds.
* Fix build with linux-user targets.
changes from v23->v24: (Jes Sorensen review 2)
* Makefile.target: use obj-$(CONFIG_*) +=
* remove unrequired includes, include qemu-common before qemu-thread
* required adding #define NO_NSPR_10_SUPPORT (harmless)
changes from v22->v23:
* configure fixes: (reported by Stefan Hajnoczi)
* test a = b, not a == b (second isn't portable)
* quote $source_path in case it contains spaces
- this doesn't really help since there are many other places
that need similar fixes, not introduced by this patch.
changes from v21->v22:
* fix configure to not link libcacard if nss not found
(reported by Stefan Hajnoczi)
* fix vscclient linkage with simpletrace backend
(reported by Stefan Hajnoczi)
* card_7816.c: add missing break in ERROR_DATA_NOT_FOUND
(reported by William van de Velde)
changes from v20->v21: (Jes Sorensen review)
* use qemu infrastructure: qemu-thread, qemu-common (qemu_malloc
and qemu_free), error_report
* assert instead of ASSERT
* cosmetic fixes
* use strpbrk and isspace
* add --disable-nss --enable-nss here, instead of in the final patch.
* split vscclient, passthru and docs to following patches.
changes from v19->v20:
* checkpatch.pl
changes from v15->v16:
Build:
* don't erase self with distclean
* fix make clean after make distclean
* Makefile: make vscclient link quiet
Behavioral:
* vcard_emul_nss: load coolkey in more situations
* vscclient:
* use hton,ntoh
* send init on connect, only start vevent thread on response
* read payload after header check, before type switch
* remove Reconnect
* update for vscard_common changes, empty Flush implementation
Style/Whitespace:
* fix wrong variable usage
* remove unused variable
* use only C style comments
* add copyright header
* fix tabulation
Signed-off-by: Alon Levy <alevy@redhat.com>
libcacard: fix out of tree builds
2010-11-28 17:36:38 +03:00
|
|
|
|
2011-07-19 23:50:32 +04:00
|
|
|
######################################################################
|
|
|
|
# qapi
|
|
|
|
|
2012-03-05 00:32:36 +04:00
|
|
|
common-obj-y += qmp-marshal.o qapi-visit.o qapi-types.o
|
2011-09-02 21:34:48 +04:00
|
|
|
common-obj-y += qmp.o hmp.o
|
2013-01-19 14:06:47 +04:00
|
|
|
endif
|
2011-09-02 21:34:47 +04:00
|
|
|
|
2012-12-20 18:24:49 +04:00
|
|
|
#######################################################################
|
|
|
|
# Target-independent parts used in system and user emulation
|
2013-01-19 14:06:47 +04:00
|
|
|
common-obj-y += qemu-log.o
|
|
|
|
common-obj-y += tcg-runtime.o
|
|
|
|
common-obj-y += hw/
|
|
|
|
common-obj-y += qom/
|
|
|
|
common-obj-y += disas/
|
2012-03-05 00:32:36 +04:00
|
|
|
|
2011-08-12 00:38:12 +04:00
|
|
|
######################################################################
|
|
|
|
# guest agent
|
|
|
|
|
2012-12-20 18:03:18 +04:00
|
|
|
# FIXME: a few definitions from qapi-types.o/qapi-visit.o are needed
|
|
|
|
# by libqemuutil.a. These should be moved to a separate .json schema.
|
|
|
|
qga-obj-y = qga/ qapi-types.o qapi-visit.o
|
2011-08-12 00:38:12 +04:00
|
|
|
|
2010-03-29 23:23:52 +04:00
|
|
|
vl.o: QEMU_CFLAGS+=$(GPROF_CFLAGS)
|
|
|
|
|
|
|
|
vl.o: QEMU_CFLAGS+=$(SDL_CFLAGS)
|
|
|
|
|
2011-08-21 07:18:37 +04:00
|
|
|
QEMU_CFLAGS+=$(GLIB_CFLAGS)
|
|
|
|
|
2012-05-22 15:42:53 +04:00
|
|
|
nested-vars += \
|
2012-11-16 21:35:27 +04:00
|
|
|
stub-obj-y \
|
2012-12-20 18:58:44 +04:00
|
|
|
util-obj-y \
|
2012-05-22 15:50:58 +04:00
|
|
|
qga-obj-y \
|
2012-09-19 17:11:05 +04:00
|
|
|
block-obj-y \
|
2013-01-19 14:06:48 +04:00
|
|
|
common-obj-y
|
2012-05-22 15:41:27 +04:00
|
|
|
dummy := $(call unnest-vars)
|