History | View | Annotate | Download (84.9 kB)
w32: Add support for curses
MinGW optionally includes pdcurses, so add support for it.
Signed-off-by: Stefan Weil <weil@mail.berlios.de>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
microblaze: Allow targeting little-endian mb
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@petalogix.com>
w32: Use additional library libiberty.a
libiberty.a is part of MinGW and provides useful functionslike ffs (MinGW) and getopt (MinGW-w64).
It is needed for w64 compilations and allows simpler code for w32.
Cc: Anthony Liguori <aliguori@us.ibm.com>Signed-off-by: Stefan Weil <weil@mail.berlios.de>...
target-i386: set target_phys_bits to 64
qemu i386 used to support more than 4GB of RAM through PAE, but it hasbeen disabled for an unknown reason. Reenable it.
Note that simply running qemu x86_64 and emulating a 32-bit CPU is nota solution to this problem as it is about 15% slower (it needs to...
linux-user: Support the epoll syscalls
Support the epoll family of syscalls: epoll_create(), epoll_create1(),epoll_ctl(), epoll_wait() and epoll_pwait(). Note that epoll_create1()and epoll_pwait() are later additions, so we have to test separatelyin configure for their presence....
linux-user: Define target alignment size
Datatype alignment can be found using following application:
int main(void) { printf("alignof(short) %ld\n", alignof(short)); printf("alignof(int) %ld\n", alignof(int)); printf("alignof(long) %ld\n", alignof(long));...
kvm: Fix race between timer signals and vcpu entry under !IOTHREAD
Found by Stefan Hajnoczi: There is a race in kvm_cpu_exec betweenchecking for exit_request on vcpu entry and timer signals arrivingbefore KVM starts to catch them. Plug it by blocking both timer related...
Merge remote branch 'qemu-kvm/uq/master' into staging
aliguori: fix build with !defined(KVM_CAP_ASYNC_PF)
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Merge remote branch 'spice/spice.v29.pull' into staging
Conflicts: trace-events
New trace-event backend: stderr
This backend sends trace events to standard error output during the emulation.
Also add a "--list-backends" option to tracetool, so configure script candisplay the list of available backends.
Signed-off-by: Fabien Chouteau <chouteau@adacore.com>...
configure: Fix spice probe
Non-existent $pkgconfig instead of $pkg_config was used when configureprobes for spice availability.
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
kvm: Consolidate must-have capability checks
Instead of splattering the code with #ifdefs and runtime checks forcapabilities we cannot work without anyway, provide central testinfrastructure for verifying their availability both at build andruntime.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>...
kvm: Enable user space NMI injection for kvm guest
Make use of the new KVM_NMI IOCTL to send NMIs into the KVM guest if theuser space raised them. (example: qemu monitor's "nmi" command)
Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>Acked-by: Jan Kiszka <jan.kiszka@siemens.com>...
Add scripts directory
Move build and user scripts into scripts directory.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
target-sh4: switch sh4 to softfloat
We need to be able to catch exceptions correctly and thus enable softfloaton SH4.
As all machines except i386 and x86_64 are using softfloat, make it thedefault and change the case to detect i386 and x86_64. Note that CRIS...
configure: fix broken test
Since commit d1807a4f836c27f6dc7061e53a834dd27f78e46a ./configure triesto test files and directories with "test -f", which only test for regularfiles. Test with "test -e", which looks for any kind of files.
This unbreak the configure script when not using a separate object...
do not default to non-prefixed pkg-config when cross compiling
This can still be requested with PKG_CONFIG=/path/to/pkg-config.Just do not use it as a default, and print a warning.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
reorganize sdl-config tests
This also allows overriding it with SDL_CONFIG, and warning in suspiciouscross-compilation scenarios.
move "ln -sf" emulation to a function
"ln -sf" does not really do anything more than "ln -s" on Solaris.
remove source_path_used
Not necessary since we use mkdir -p and from this patch test -f.
Also, dirname returns "." if a path has no directory component,as is the case for "sh configure".
[PATCH v3 14/15] remove HOST_CC mention from roms/{sea, vga}bios/config.mak
Not used in the submodules.
move --srcdir detection earlier
This will help getting config.guess and config.sub from the srcdir.
make trace options use autoconfy names
These are not in any release, so I am just renaming them.
test cc with the complete set of chosen flags
The "test the C compiler works ok" comes before a bunch of flagsare added for --cpu or just depending on the host. It helpsdebugging if the test is done after these flags are (unconditionally)added.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>...
do not pass bogus $(SRC_PATH) include paths to cc during configure
Non-existent -I paths are dropped silently by the compiler, but stillit is not polite to pass bogus options. Configure-time tests do notneed any include files from the source path, so only include -I flags...
provide portable HOST_LONG_BITS test
Do not hardcode the list of 64-bit CPUs. Use sizeof(void *) tocompute it. Renaming it to HOST_LONG_BITS to HOST_POINTER_BITSis left for later.
fix spelling of $pkg_config, move default together with other cross tools
default compilation tools to environment variables
default make and install to environment variables
move feature variables to the top
fix sparse support (?)
I didn't test with sparse, but the old code using += before a variablewas set was wrong. Sparse support should probably be ripped out orredone, but this at least keeps some sanity.
linux-user: Add configure check for linux/fiemap.h and IOC_FS_FIEMAP
Add a configure check for the existence of linux/fiemap.h and theIOC_FS_FIEMAP ioctl. This fixes a compilation failure on Linuxsystems which don't have that header file.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>...
linux-user: Implement sync_file_range{,2} syscalls
Implement the missing syscalls sync_file_range and sync_file_range2.The latter in particular is used by newer versions of apt on Ubuntufor ARM.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
raw-posix: add discard support
Add support to discard blocks in a raw image residing on an XFS filesystemby calling the XFS_IOC_UNRESVSP64 ioctl to punch holes. Support for otherhole punching mechanisms can be added when they become available.
Signed-off-by: Christoph Hellwig <hch@lst.de>...
ceph/rbd block driver for qemu-kvm
RBD is an block driver for the distributed file system Ceph(http://ceph.newdream.net/). This driver uses librados (which is partof the Ceph server) for direct access to the Ceph object store and isrunning entirely in userspace (Yehuda also wrote a driver for the...
Revert "Add support for generating a systemtap tapset static probes"
This reverts commit 2834c3e0140c3b0ed4422909dfa0607b7213d95d.
Conflicts:
Makefile.target
Revert "Add a DTrace tracing backend targetted for SystemTAP compatability"
This reverts commit 4addb1127f6327c7ebcbd150a6b589e7677adc92.
Add a DTrace tracing backend targetted for SystemTAP compatability
This introduces a new tracing backend that targets the SystemTAPimplementation of DTrace userspace tracing. The core functionalityshould be applicable and standard across any DTrace implementation...
Add support for generating a systemtap tapset static probes
This introduces generation of a qemu.stp/qemu-system-XXX.stpfiles which provides tapsets with friendly names for staticprobes & their arguments. Instead of
probe process("qemu").mark("qemu_malloc") {...
Add Intel HD Audio support to qemu.
This patch adds three devices to qemu:
intel-hda Intel HD Audio Controller, the PCI device. Provides a HDA bus. Emulates ICH6 at the moment. Adding a ICH9 PCIE variant shouldn't be hard.
hda-duplex HDA Codec. Attaches to the HDA bus. Supports 16bit stereo,...
rewrite i386 tests Makefile
1) compute path to i386 compiler from configure. If it is found, runthe i386 tests. I use macros so that this approach could be appliedfor other arches as well.
2) provide an easily extensible way to add tests
Most tests fail, but at least "make test" does something meaningful....
unbreak "make" from tests directory
signalfd compatibility
Port qemu-kvm's signalfd compat code.
commit 5a7fdd0abd7cd24dac205317a4195446ab8748b5Author: Anthony Liguori <aliguori@us.ibm.com>Date: Wed May 7 11:55:47 2008 -0500
Use signalfd() in io-thread
This patch reworks the IO thread to use signalfd() instead of sigtimedwait()...
configure: Support disabling warnings in $gcc_flags
-Wall enables a bunch of warnings at once. configure puts it after$gcc_flags. This makes it impossible to disable warnings enabled by-Wall there. Fix by putting configured flags last.
Signed-off-by: Markus Armbruster <armbru@redhat.com>...
ppc: remove video.x
Only Mac-on-Linux stuff used video.x, OpenBIOS does not need it.
Remove video.x MoL hacks.
Signed-off-by: Alexander Graf <agraf@suse.de>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
configure: Send error message from spice check to /dev/null
pkg-config is not always available (e.g. on win32 hosts),but we don't want to see the 'command not found' error message.
Redirect stdout and stderr to /dev/null.
v2:
configure: Remove unneeded defines from checks
_GNU_SOURCE is already defined in QEMU_CFLAGS whichis passed to gcc in shell function compile_prog.
Removing the definition from several checks avoids compiler warnings(which are now written to config.log)....
configure: include stddef.h for NULL
This fixes an observed failure to detect madvise() on Linux.
To avoid similar issues, all other tests that use NULL but don't alreadyhave stddef.h (or another header that is defined to provide NULL,such as stdio.h, unistd.h, or time.h) are also fixed....
Merge remote branch 'spice/submit.6' into staging
Conflicts: configure
configure: Don't rely on special pthreads library
Haiku has pthreads integrated into its libroot.so library. No linker argumentsare needed for it, so don't fail if -lpthread and similar don't link.
Signed-off-by: Andreas Färber <andreas.faerber@web.de>...
configure: Add basic support for Haiku
For compatibility with BeOS, Haiku's error codes are negative whereas recentPOSIX versions require them to be positive. As spotted by François, someparts of QEMU code rely on this, so use a mapper library to convert them...
mingw: add version information to the executables
Add QEMU version information to the executables, based on earlierwork by C. W. Betts and Robert Riebisch.
Avoid exit in trap as it breaks with some shells
Don't call exit in the trap handler as it causes the return code to bezero with some buggy shells (dash and pdksh at least) and is uselesshere anyway.
Signed-off-by: Loïc Minier <loic.minier@linaro.org>...
Introduce qemu_madvise()
vl.c has a Sun-specific hack to supply a prototype for madvise(),but the call site has apparently moved to arch_init.c.
Haiku doesn't implement madvise() in favor of posix_madvise().OpenBSD and Solaris 10 don't implement posix_madvise() but madvise()....
add spice into the configure file
configure: add logging
Write compile commands and messages to config.log.Useful for debugging configure.
mingw: use ASLR, no-SEH and DEP if available
If the linker supports the flags --dynamicbase, --no-seh,or --nxcompat, use them.
Tested on Windows Vista: Process Explorer reports that ASLR and DEPare in use. No effect seen on Wine or Windows XP.
Use gcc warning flag -Wnested-externs
If the compiler supports the warning flag -Wnested-externs, use it.
Avoid the only warning by moving the declaration of xml_builtin to amore proper place.
Use gcc warning flag -Wempty-body
If the compiler supports the warning flag -Wempty-body, use it.
Adjust the code to avoid the warnings.
Use a few more gcc warning flags
If the compiler supports the following warning flags, use them:
-Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers-Wmissing-include-dirs
Currently, these flags don't produce any warnings.
Use gcc warning flag -Wtype-limits
If the compiler supports the warning flag -Wtype-limits, use it.
trace: Add trace-events file for declaring trace events
This patch introduces the trace-events file where trace events can bedeclared like so:
qemu_malloc(size_t size) "size %zu" qemu_free(void *ptr) "ptr %p"
These trace event declarations are processed by a new tool called...
trace: Add simple built-in tracing backend
This patch adds a simple tracer which produces binary trace files. Totry out the simple backend:
$ ./configure --trace-backend=simple$ make
After running QEMU you can pretty-print the trace:
$ ./simpletrace.py trace-events trace.log...
trace: Support for dynamically enabling/disabling trace events
This patch adds support for dynamically enabling/disabling of trace events.This is done by internally maintaining each trace event's state, andpermitting logging of data from a trace event only if it is in an...
trace: Specify trace file name
Allow users to specify a file for trace-outputs at configuration.Also, allow trace files to be annotated by <pid> so each qemu instance hasunique traces.
The trace file name can be passed as a config option:--trace-file=/path/to/file...
trace: Add LTTng Userspace Tracer backend
This patch adds LTTng Userspace Tracer (UST) backend support. The USTsystem requires no kernel support but libust and liburcu must beinstalled.
$ ./configure --trace-backend ust$ make
Start the UST daemon:$ ustd &...
Fix "make install" with a cross toolchain
We must be able to use a non-native strip executable, but not allversions of 'install' support the --strip-program option (e.g.OpenBSD). Accordingly, we can't use 'install -s', and we must run stripseparately....
vnc: tight add PNG encoding
Introduce a new encoding: VNC_ENCODING_TIGHT_PNG [1] (-269) with a newtight filter VNC_TIGHT_PNG (0x0A). When the client tells it supports the Tight PNGencoding, the server will use tight, but will always send encoding pixels using...
vnc: threaded VNC server
Implement a threaded VNC server using the producer-consumer model.The main thread will push encoding jobs (a list a rectangles to update)in a queue, and the VNC worker thread will consume that queue and sendframebuffer updates to the output buffer....
vnc: better default values for VNC options
vnc_jpeg and vnc_png are now "auto" by default, this means thatif the dependencies are installed (libjpeg or libpng), then theywill be enabled.
vnc_thread is disabled by default. It should be enabled by default...
ui: move all ui components in ui/
Move sdl, vnc, curses and cocoa UI into ui/ to cleanupthe root directory. Also remove some unnecessary explicittargets from Makefile.
aliguori: fix build when srcdir != objdir
Signed-off-by: Corentin Chary <corentincj@iksaif.net>...
vnc: tight: add JPEG and gradient subencoding with smooth image detection
Add gradient filter and JPEG compression with an heuristic to detect howlossy the comppression will be. This code has been adapted fromlibvncserver/tight.c.
JPEG support can be enabled/disabled at compile time with --enable-vnc-jpeg...
tcg-s390: new TCG Target
Original patch from Ulrich Hecht, further work from Alexander Grafand Richard Henderson.
Cc: Ulrich Hecht <uli@suse.de>Cc: Alexander Graf <agraf@suse.de>Signed-off-by: Richard Henderson <rth@twiddle.net>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
virtio-9p: Make infrastructure for the new security model.
This patch adds required infrastructure for the new security model.
- A new configure option for attr/xattr.- if CONFIG_VIRTFS will be defined if both CONFIG_LINUX and CONFIG_ATTR defined.- Defines routines related to both security models....
tcg-s390: correctly detect s390 with a 64-bit kernel
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
tcg-s390: Adjust compilation flags.
Force -m31/-m64 based on s390/s390x target.
Force -march=z990. The TCG backend will always require thelong-displacement facility, so the compiler may as well makeuse of that as well.
Signed-off-by: Richard Henderson <rth@twiddle.net>...
s390x: Don't use a linker script for user-only.
The default placement of the application at 0x80000000 is fine,and will avoid the default placement for most other guests.
Signed-off-by: Richard Henderson <rth@twiddle.net>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
tcg-i386: Merge 64-bit generation.
configure: display sysconfdir in summary
configure: ignore unknown --xyzdir options
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
configure: move directory defaults earlier
Unify with existing special-purpose configure code for win32.
move computation of tools and roms outside of config-host.mak generation
rename CONFIG_QEMU_PREFIX
configure: unify handling of xyzdir variables
Making an xyzdir variable for each directory prepares for the nextpatches introducing config-host.h defines and configure options for them.It also fixes the problem where overriding prefix at "make install"...
configure: move all directory entries in config-host.mak close
configure: expand ${prefix} in create_config
configure: introduce more --xyzdir options
configure: bail out early on invalid -cpu option
It would fail later anyway.
configure: avoid using expr
Just a personal preference against duplicating hieroglyphics.
configure: dyngen is long time gone
configure: introduce sysconfsuffix
configure: introduce confdir and confsuffix
confsuffix was write-only, flesh it out.
configure: remove some bashisms
Fix --enable-user-pie compilation.
We forgot to propagate -fpie to the libdis-user directory.
Signed-off-by: Richard Henderson <rth@twiddle.net>Acked-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
QMP: Introduce commands documentation
One of the most important missing feature in QMP today is itssupported commands documentation.
The plan is to make it part of self-description support, howeverself-description is a big task we have been postponing for a...
Fix cross compilation
This patch enhances the algorithm which finds the correct settings for SDL.For cross compilations (when cross_prefix is set), it looks for sdl-configwith cross prefix. Here is the complete search order:
$(cross_prefix}pkg-config (old, only used for cross compilation)...
Avoid libaio for usermode
Linux AIO is aonly used by system emulation, so should not be linked intothe userspace emulatior.
Signed-off-by: Paul Brook <paul@codesourcery.com>
virtio-9p: Create a commandline option -fsdev
This patch creates a new command line option named -fsdev to hold any filesystem specific information.
The option will currently hold the following attributes:-fsdev fstype id=id,path=path_to_sharewherefstype: Type of the file system....