summaryrefslogtreecommitdiff
path: root/Makefile.target
AgeCommit message (Collapse)AuthorFilesLines
2016-05-27linux-user: Provide safe_syscall for fixing races between signals and syscallsTimothy E Baldwin1-1/+6
If a signal is delivered immediately before a blocking system call the handler will only be called after the system call returns, which may be a long time later or never. This is fixed by using a function (safe_syscall) that checks if a guest signal is pending prior to making a system call, and if so does not call the system call and returns -TARGET_ERESTARTSYS. If a signal is received between the check and the system call host_signal_handler() rewinds execution to before the check. This rewinding has the effect of closing the race window so that safe_syscall will reliably either (a) go into the host syscall with no unprocessed guest signals pending or or (b) return -TARGET_ERESTARTSYS so that the caller can deal with the signals. Implementing this requires a per-host-architecture assembly language fragment. This will also resolve the mishandling of the SA_RESTART flag where we would restart a host system call and not call the guest signal handler until the syscall finally completed -- syscall restarting now always happens at the guest syscall level so the guest signal handler will run. (The host syscall will never be restarted because if the host kernel rewinds the PC to point at the syscall insn for a restart then our host_signal_handler() will see this and arrange the guest PC rewind.) This commit contains the infrastructure for implementing safe_syscall and the assembly language fragment for x86-64, but does not change any syscalls to use it. Signed-off-by: Timothy Edward Baldwin <T.E.Baldwin99@members.leeds.ac.uk> Message-id: 1441497448-32489-14-git-send-email-T.E.Baldwin99@members.leeds.ac.uk [PMM: * Avoid having an architecture if-ladder in configure by putting linux-user/host/$(ARCH) on the include path and including safe-syscall.inc.S from it * Avoid ifdef ladder in signal.c by creating new hostdep.h to hold host-architecture-specific things * Added copyright/license header to safe-syscall.inc.S * Rewrote commit message * Added comments to safe-syscall.inc.S * Changed calling convention of safe_syscall() to match syscall() (returns -1 and host error in errno on failure) * Added a long comment in qemu.h about how to use safe_syscall() to implement guest syscalls. ] RV: squashed Peters "fixup! linux-user: compile on non-x86-64 hosts" patch Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2015-12-18io: add abstract QIOChannel classesDaniel P. Berrange1-0/+2
Start the new generic I/O channel framework by defining a QIOChannel abstract base class. This is designed to feel similar to GLib's GIOChannel, but with the addition of support for using iovecs, qemu error reporting, file descriptor passing, coroutine integration and use of the QOM framework for easier sub-classing. The intention is that anywhere in QEMU that almost anywhere that deals with sockets will use this new I/O infrastructure, so that it becomes trivial to then layer in support for TLS encryption. This will at least include the VNC server, char device backend and migration code. Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2015-09-16Merge remote-tracking branch 'remotes/bonzini/tags/for-upstream' into stagingPeter Maydell1-1/+7
* Linux header update and cleanup * Support for HyperV crash report * Cleanup of target-specific HMP commands * Multiarch batch * Checkpatch fix for Perl 5.22 * NBD fix * Revert incorrect commit 5243722376 # gpg: Signature made Wed 16 Sep 2015 16:39:01 BST using RSA key ID 78C7AE83 # gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" # gpg: aka "Paolo Bonzini <pbonzini@redhat.com>" * remotes/bonzini/tags/for-upstream: (24 commits) nbd: release exp->blk after all clients are closed checkpatch: Escape left braces in regex monitor: uninclude cpu_ldst include/exec: Move cputlb exec.c defs out cputlb: Change tlb_set_dirty() arg to cpu cputlb: move CPU_LOOP() for tlb_reset() to exec.c translate: move real_host_page setting to -common tcg: Move tci_tb_ptr to -common tcg: split tcg_op_defs to -common translate-all: Move tcg_handle_interrupt() to -common cpu-exec: Migrate some generic fns to cpu-exec-common qemu-char: Use g_new() & friends where that makes obvious sense monitor: added generation of documentation for hmp-commands-info.hx hmp-commands.hx: fix end of table info monitor: remove target-specific code from monitor.c hmp-commands-info: move info_cmds content out of monitor.c i386/kvm: Hyper-v crash msrs set/get'ers and migration kvm: Add kvm system event crash handler cpu: Add crash_occurred flag into CPUState target-i386: move asm-x86/hyperv.h to standard-headers ... Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2015-09-16tcg: split tcg_op_defs to -commonPeter Crosthwaite1-0/+1
tcg_op_defs (and the _max) are both needed by the TCI disassembler. For multi-arch, tcg.c will be multiple-compiled (arch-obj) with its symbols hidden from common code. So split the definition off to new file, tcg-common.c which will remain a regular obj-y for use by both the TCI disas as well as the multiple tcg.c's. Cc: Stefan Weil <sw@weilnetz.de> Signed-off-by: Peter Crosthwaite <crosthwaite.peter@gmail.com> Message-Id: <4b607425886d85aee65878e4935dfad46b3e6085.1441614289.git.crosthwaite.peter@gmail.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-09-16translate-all: Move tcg_handle_interrupt() to -commonPeter Crosthwaite1-0/+1
Move this function to common code. It has no arch specific dependencies. Prepares support for multi-arch where the translate-all interface needs to be virtualised. One less thing to virtualise. Reviewed-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Peter Crosthwaite <crosthwaite.peter@gmail.com> Message-Id: <44a7c73604ed2552af47ed02b047b6a772b683e0.1441614289.git.crosthwaite.peter@gmail.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-09-16cpu-exec: Migrate some generic fns to cpu-exec-commonPeter Crosthwaite1-0/+1
The goal is to split the functions such that cpu-exec is CPU specific content, while cpus-exec-common.c is generic code only. The function interface to cpu-exec needs to be virtualised to prepare support for multi-arch and moving these definitions out saves bloating the QOM interface. So move these definitions out of cpu-exec to a new module, cpu-exec-common. Signed-off-by: Peter Crosthwaite <crosthwaite.peter@gmail.com> Message-Id: <3cefeb3fbbb33031670951a0e74de2778529da3f.1441614289.git.crosthwaite.peter@gmail.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-09-16hmp-commands-info: move info_cmds content out of monitor.cPavel Butsykin1-1/+4
For moving target- and device-specific code from monitor.c, to beginning we move info_cmds content to hmp-commands-info.hx Signed-off-by: Pavel Butsykin <pbutsykin@virtuozzo.com> Signed-off-by: Denis V. Lunev <den@openvz.org> CC: Paolo Bonzini <pbonzini@redhat.com> CC: Peter Maydell <peter.maydell@linaro.org> Message-Id: <1441899541-1856-2-git-send-email-den@openvz.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-09-15qom: allow QOM to be linked into tools binariesDaniel P. Berrange1-0/+2
The qom objects are currently added to common-obj-y which is only linked into the system emulators. The later crypto patches will depend on QOM infrastructure and will also be used from tools binaries. Thus the QOM objects are moved into a new qom-obj-y variable which can be referenced when linking tools, system emulators and tests. Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2015-09-15crypto: move crypto objects out of libqemuutil.laDaniel P. Berrange1-0/+4
Future patches will be adding more crypto related APIs which rely on QOM infrastructure. This creates a problem, because QOM relies on library constructors to register objects. When you have a file in a static .a library though which is only referenced by a constructor the linker is dumb and will drop that file when linking to the final executable :-( The only workaround for this is to link the .a library to the executable using the -Wl,--whole-archive flag, but this creates its own set of problems because QEMU is relying on lazy linking for libqemuutil.a. Using --whole-archive majorly increases the size of final executables as they now contain a bunch of object code they don't actually use. The least bad option is to thus not include the crypto objects in libqemuutil.la, and instead define a crypto-obj-y variable that is referenced directly by all the executables that need this code (tools + softmmu, but not qemu-ga). We avoid pulling entire of crypto-obj-y into the userspace emulators as that would force them to link to gnutls too, which is not required. Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2015-09-09Makefile.target: include top level build dir in vpathMichael Marineau1-1/+1
Using ccache with CCACHE_BASEDIR set to $(SRC_PATH) or a parent will rewrite all absolute paths to relative paths. This interacts poorly with QEMU's two-level build directory scheme. For example, lets say BUILD_DIR=$(SRC_PATH)/build so build/blockdev.d will contain: blockdev.o: ../blockdev.c ../include/sysemu/block-backend.h \ Now the target build under build/x86_64-softmmu or similar will depend on ../blockdev.o which in turn will get make to source ../blockdev.d to check its dependencies. Since make always considers paths relative to the current working directory rather than the makefile the path appeared in the relative path to ../blockdev.c is useless. This change simply adds the top level build directory to vpath so paths relative to the source directory, top build directory, and target build directory all work just fine. Signed-off-by: Michael Marineau <michael.marineau@coreos.com> Message-Id: <1439103775-11836-1-git-send-email-michael.marineau@coreos.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-06-12migration: move savevm.c inside migration/Juan Quintela1-2/+2
Now, everything is in place. Signed-off-by: Juan Quintela <quintela@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com>
2015-06-12migration: move ram stuff to migration/ramJuan Quintela1-0/+1
For historic reasons, ram migration have been on arch_init.c. Just split it into migration/ram.c, the same that happened with block.c. There is only code movement, no changes altogether. Signed-off-by: Juan Quintela <quintela@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com>
2015-06-05Makefile.target: set master BUILD_DIRPeter Crosthwaite1-0/+2
make can be invoked in the individual build dirs to build an individual target or just a single file of a target. e.g. touch translate-all.c make -C microblazeel-softmmu translate-all.o There is however a small bug when using the pixman submodule. config-host.mak will ref BUILD_DIR for the pixman -I CFLAGS: grep BUILD_DIR config-host.mak QEMU_CFLAGS=-I$(SRC_PATH)/pixman/pixman -I$(BUILD_DIR)/pixman/pixman ... This causes a build failure as -I/pixman/pixman (BUILD_DIR=="") will not be found. BUILD_DIR is usually set by the top level Makefile. Just lazy-set it in Makefile.target to the parent directory. Granted, this will not work if the pixman submodule is not prebuilt, but it at least means you can do incremental partial builds once you have done your initial full build (or attempt) from the top level. The next step would be refactor make infrastructure to rebuild pixman on a submake like the one above. Cc: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Peter Crosthwaite <crosthwaite.peter@gmail.com> Message-Id: <1432618686-16077-1-git-send-email-crosthwaite.peter@gmail.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-06-03device-tree: Make a common-objPeter Crosthwaite1-1/+0
There is no reason for device tree API to be built per-target. common-obj it. There is an extraneous inclusion of config.h that needs to be removed. Cc: Alexander Graf <agraf@suse.de> Reviewed-by: Andreas Färber <afaerber@suse.de> Signed-off-by: Peter Crosthwaite <crosthwaite.peter@gmail.com> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
2015-05-19Makefile.target: set icon for binary file on Mac OS XProgrammingkid1-0/+4
Implements setting the icon for the binary file in Mac OS X. Signed-off-by: John Arbuckle <programmingkidx@gmail.com> [PMM: tweaked makefile to use $@ and quiet-command] Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2015-04-28Makefile.target: prepend $libs_softmmu to $LIBSWei Liu1-1/+1
I discovered a problem when trying to build QEMU statically with gcc. libm is an element of LIBS while libpixman-1 is an element in libs_softmmu. Libpixman references functions in libm, so the original ordering makes linking fail. This fix is to reorder $libs_softmmu and $LIBS to make -lm appear after -lpixman-1. However I'm not quite sure if this is the right fix, hence the RFC tag. Normally QEMU is built with c++ compiler which happens to link in libm (at least this is the case with g++), so building QEMU statically normally just works and nobody notices this issue. Signed-off-by: Wei Liu <wei.liu2@citrix.com> Message-Id: <1425912873-21215-1-git-send-email-wei.liu2@citrix.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-02-27Makefile.target: binary depends on config-devicesMichael S. Tsirkin1-1/+3
relink binary whenever config-devices.mak changes: this makes sense as we are adding/removing devices, so binary has to be relinked to be up to date. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Message-Id: <1424332114-13440-2-git-send-email-mst@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-02-12tcg: Move some opcode generation functions out of lineRichard Henderson1-1/+1
Some of these functions are really quite large. We have a number of things that ought to be circularly dependent, but we duplicated code to break that chain for the inlines. This saved 25% of the code size of one of the translators I examined. Reviewed-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de> Signed-off-by: Richard Henderson <rth@twiddle.net>
2014-10-15bootdevice: move bootdevice related code to new file bootdevice.cGonglei1-1/+1
Signed-off-by: Gonglei <arei.gonglei@huawei.com> Reviewed-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2014-08-12trace: [tcg] Define TCG tracing helper routinesLluís Vilanova1-0/+5
Generates file "trace/generated-helpers.c" with TCG helper definitions to trace events in guest code at execution time. The helpers ('helper_trace_${event}_exec_proxy') cast the TCG-compatible native argument types to their original types (as defined in "trace-events") and call the tracing routine ('trace_${event}_exec'). Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2014-08-12trace: install simpletrace SystemTap tapsetStefan Hajnoczi1-1/+9
The simpletrace SystemTap tapset outputs simpletrace binary traces for SystemTap probes. This is useful because SystemTap has no default way to format or store traces. The simpletrace SystemTap tapset provides an easy way to store traces. The simpletrace.py tool or custom Python scripts using the simpletrace.py API can analyze SystemTap these traces: $ ./configure --enable-trace-backends=dtrace ... $ make && make install $ stap -e 'probe qemu.system.x86_64.simpletrace.* {}' \ -c qemu-system-x86_64 >/tmp/trace.out $ scripts/simpletrace.py --no-header trace-events /tmp/trace.out g_malloc 4.531 pid=15519 size=0xb ptr=0x7f8639c10470 g_malloc 3.264 pid=15519 size=0x300 ptr=0x7f8639c10490 g_free 5.155 pid=15519 ptr=0x7f8639c0f7b0 Note that, unlike qemu-system-x86_64.stp and qemu-system-x86_64.stp-installed, only one file is needed since the simpletrace SystemTap tapset does not reference the QEMU binary by path. Therefore it doesn't matter whether the QEMU binary is installed or not. Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2014-07-01configure: Fix -lm test, so that tools can be compiled on hosts that require -lmAlexey Kardashevskiy1-4/+0
The existing test whether "-lm" needs to be included or not is insufficient as it reports false negative on Fedora20/ppc64. This happens because sin(0.0) is a constant value which compiler can safely throw away and therefore there is no need to add "-lm". As the result, qemu-nbd/qemu-io/qemu-img tools cannot compile. This adds a global variable and uses it in the test to prevent from optimization. Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> [Use Peter's improvement on the test to fool LTO, and remove the now useless -lm addition in Makefile.target. - Paolo] Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2014-06-24build-sys: introduce install-prog macro to install&strip binaries and use itMichael Tokarev1-4/+1
Use common rule (macro) to install and strip binaries, and use it in all places where we install binaries, instead of fixing bugs like 1319493 in every place. (This fixes https://bugs.launchpad.net/bugs/1319493) Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
2014-06-19NUMA: move numa related code to new file numa.cWanlong Gao1-1/+1
Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com> Reviewed-by: Eduardo Habkost <ehabkost@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Hu Tao <hutao@cn.fujitsu.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com> Signed-off-by: Andre Przywara <andre.przywara@amd.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Acked-by: Michael S. Tsirkin <mst@redhat.com> MST: comment tweaks
2014-06-16target-ppc: Enable Building of libdecnumberTom Musta1-0/+6
Enable compilation of the newly added libdecnumber library code. Object file targets are added to Makefile.target using a newly introduced flag CONFIG_LIBDECNUMBER. The flag is added to the PowerPC targets (ppc[64]-linux-user, ppc[64]-softmmu). Signed-off-by: Tom Musta <tommusta@gmail.com> [agraf: add ppcemb and ppc64abi32 config] Signed-off-by: Alexander Graf <agraf@suse.de>
2014-06-11bsd-user: add HOST_VARIANT_DIR for various *BSD dependent codeStacey Son1-1/+2
This change adds HOST_VARIANT_DIR so the various BSD OS dependent code can be separated into its own directories rather than using #ifdef's. This may also allow an BSD variant OS to host another BSD variant's executable as a target. Signed-off-by: Sean Bruno <sbruno@freebsd.org> Message-id: 1402246651-71099-2-git-send-email-sbruno@freebsd.org Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2014-06-09trace: Multi-backend tracingLluís Vilanova1-2/+2
Adds support to compile QEMU with multiple tracing backends at the same time. For example, you can compile QEMU with: $ ./configure --enable-trace-backends=ftrace,dtrace Where 'ftrace' can be handy for having an in-flight record of events, and 'dtrace' can be later used to extract more information from the system. This patch allows having both available without recompiling QEMU. Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2014-05-08Makefile.target: use $(INSTALL_PROG) for installing, not $(INSTALL)Michael Tokarev1-1/+1
$(INSTALL_PROG) is evaluated to libtool if using libtool, while $(INSTALL) is not. Use $(INSTALL_PROG) so that libtool is used with target too when necessary. This allows, for example, to link qemu with shared libcacard. Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Cc: Fam Zheng <famz@redhat.com> Cc: Paolo Bonzini <pbonzini@redhat.com> Cc: Alon Levy <alevy@redhat.com> Cc: qemu-trivial@nongnu.org -- This is done on top of previous patch (using $(STRIP)), but it can be used by its own. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2014-05-08Makefile: strip tools and modules tooMichael Tokarev1-1/+1
Commit 52ba784d3 replaced $(STRIP_OPT) with $(STRIP) in some places (for example, Makefile.target), but not all of them. There are a few places remain in main Makefile which still uses $(STRIP_OPT). Replace these places with $(STRIP) too. While at it, simplify variable pattern substitution of the surrounding places, change $(patsubst pat,rep,$(var)) into $(var:pat=rep) which is much easier to read (this is probably a good idea to do everywhere). Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Cc: Fam Zheng <famz@redhat.com> Cc: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2014-05-08build: simplify Makefile.target around unnest-vars invocationsPaolo Bonzini1-9/+2
No need to save/restore obj-y, we can just build all-obj-y incrementally. Reviewed-by: Fam Zheng <famz@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2014-05-08build: simplify Makefile.target a bit, use just one rule for softmmuMichael Tokarev1-15/+11
On win*, we build QEMU_PROGW (GUI) and create a console app QEMU_PROG from it, while on non-win*, we make only QEMU_PROG using the same rules as used for QEMU_PROGW on win*. Make just one rule for building main executable, and an additional rule for win* to make console app from it. Also consolidate tests for $(QEMU_PROGW). Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> [Fix user-mode compilation. - Paolo] Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2014-05-07xen: factor out common functionsWei Liu1-2/+4
So common functions used by both HVM and PV are factored out from xen-all.c to xen-common.c. Finally rename xen-all.c to xen-hvm.c, as those functions are only useful to HVM guest. Create *-stub files and modify Makefile.target to reflect the changes. Signed-off-by: Wei Liu <wei.liu2@citrix.com> Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2014-02-20build: softmmu targets do not have a "main.o" filePaolo Bonzini1-2/+0
Thus this rule is useless. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2014-02-20Makefile: introduce common-obj-m and block-obj-m for DSOFam Zheng1-1/+5
$(common-obj-m) will include $(block-obj-m), like $(common-obj-y) does for $(block-obj-y). Signed-off-by: Fam Zheng <famz@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2014-02-20rules.mak: fix $(obj) to a real relative pathFam Zheng1-4/+13
Makefile.target includes rule.mak and unnested common-obj-y, then prefix them with '../', this will ignore object specific QEMU_CFLAGS in subdir Makefile.objs: $(obj)/curl.o: QEMU_CFLAGS += $(CURL_CFLAGS) Because $(obj) here is './block', instead of '../block'. This doesn't hurt compiling because we basically build all .o from top Makefile, before entering Makefile.target, but it will affact arriving per-object libs support. The starting point of $(obj) is passed in as argument of unnest-vars, as well as nested variables, so that different Makefiles can pass in a right value. Signed-off-by: Fam Zheng <famz@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-16default-configs/: CONFIG_GDBSTUB_XML removedÁkos Kovács1-1/+1
Makefile.target: Build gdbstub-xml.o only when TARGET_XML_FILES is not empty. Signed-off-by: Ákos Kovács <akoskovacs@gmx.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-16Makefile.target: CONFIG_NO_* variables removedÁkos Kovács1-6/+2
CONFIG_NO_* variables replaced with the lnot logical function Signed-off-by: Ákos Kovács <akoskovacs@gmx.com> [PMM: fixed a few CONFIG_NO_* uses that were missed] Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-06-14build: do not use TARGET_ARCHPaolo Bonzini1-4/+4
TARGET_ARCH is generally wrong to use, there are better variables provided in config-target.mak. The right one is usually TARGET_NAME (previously TARGET_ARCH2), but for bsd-user we can also use TARGET_ABI_DIR for consistency with linux-user. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Message-id: 1370349928-20419-4-git-send-email-pbonzini@redhat.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2013-06-14build: rename TARGET_ARCH2 to TARGET_NAMEPaolo Bonzini1-3/+3
Do not introduce any new use yet. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Message-id: 1370349928-20419-3-git-send-email-pbonzini@redhat.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2013-06-14Add a stp file for usage from build directoryAlon Levy1-3/+13
For systemtap the location of the process being tapped is crucial, as a result the existing stp file requires installation for use. There are now two files: $(TARGET_DIR)/$(QEMU_PROG).stp-installed: copied to $(tapdir)/$(QEMU_PROG).stp $(TARGET_DIR)/$(QEMU_PROG).stp: pointing to the built binary, usable without installation To use: stap -I $(TARGET_DIR) ... Signed-off-by: Alon Levy <alevy@redhat.com> Acked-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Message-id: 1370349928-20419-2-git-send-email-pbonzini@redhat.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2013-06-11dump: Drop qmp_dump_guest_memory() stub and build for all targetsAndreas Färber1-1/+1
qmp_dump_guest_memory() calls dump_init() and returns an Error when cpu_get_dump_info() returns an error, as done by the stub. So there is no need to have a stub for qmp_dump_guest_memory(). Enable the documentation of the always-present dump-guest-memory command. That way we can drop CONFIG_HAVE_CORE_DUMP and leave configure completely out of the picture for target CPU features. Signed-off-by: Andreas Färber <afaerber@suse.de>
2013-06-11memory_mapping: Drop qemu_get_memory_mapping() stubAndreas Färber1-3/+1
dump.c:dump_init() never checked for the return code anyway. If paging is not enabled, it will fall back to an identity map. If paging is enabled and getting memory mapping list is not implemented, qemu_get_guest_memory_mapping() will return an error. Since the targets not implementing memory mapping also don't implement dump support, we will not reach this code today and can worry about changing cpu_paging_enabled() default when the need arises. This allows us to drop CONFIG_HAVE_GET_MEMORY_SUPPORT. Signed-off-by: Andreas Färber <afaerber@suse.de>
2013-06-10dump: Move stubs into libqemustub.aAndreas Färber1-2/+0
This allows us to drop CONFIG_NO_CORE_DUMP with its indirect dependency on CONFIG_HAVE_CORE_DUMP. Acked-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Andreas Färber <afaerber@suse.de>
2013-05-01cpu: Make kvm-stub.o available outside softmmuIgor Mammedov1-7/+7
It will provide stubs for *-user targets once softmmu-specific calls are attempted from common CPU code. Signed-off-by: Igor Mammedov <imammedo@redhat.com> Reviewed-by: Eduardo Habkost <ehabkost@redhat.com> Signed-off-by: Andreas Färber <afaerber@suse.de>
2013-04-27win32: generate console executable againPaolo Bonzini1-1/+1
The -mwindows option is not anymore in LIBS at this point of the Makefile, it is only in libs_softmmu. Check the right variable. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-04-24build: include config-{, all-}devices.mak after defining CONFIG_SOFTMMU and ↵Paolo Bonzini1-1/+1
CONFIG_USER_ONLY Moving the inclusions closer to Makefile, and before rules.mak, makes Makefile and Makefile.target more consistent with each other. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Tested-by: Markus Armbruster <armbru@redhat.com> Message-id: 1366102238-12374-1-git-send-email-pbonzini@redhat.com Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2013-04-18configure: move common libraries to config-host.makPaolo Bonzini1-5/+5
Move -lm to the end of the line, so that it can be picked up as a dependency by pixman in the static build case. Reviewed-by: Peter Maydell <peter.maydell@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
2013-03-01build: always link device_tree.o into emulators if libfdt availablePaolo Bonzini1-0/+1
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-02-18qtest: Add MMIO supportAndreas Färber1-0/+1
Introduce [qtest_]{read,write}[bwlq]() libqtest functions and corresponding QTest protocol commands to replace local versions in libi2c-omap.c. Also convert m48t59-test's cmos_{read,write}_mmio() to {read,write}b(). Signed-off-by: Andreas Färber <afaerber@suse.de> Signed-off-by: Andreas Färber <afaerber@suse.de> Message-id: 1361051043-27944-4-git-send-email-afaerber@suse.de Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2013-01-26build: remove universal-obj-yPaolo Bonzini1-2/+1
All of universal-obj-y, user-obj-y (right now unused) and common-obj-y can be unified into common-obj-y if we take care of defining CONFIG_SOFTMMU and CONFIG_USER_ONLY in the toplevel makefile. This is similar to how we define symbols for hardware components. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>