History | View | Annotate | Download (10.6 kB)
vnc: split encoding in specific files
This will allow to implement new encodings (tight, zrle, ..)in a cleaner way. This may hurt performances, because somefunctions like vnc_convert_pixel are not static anymore, butshould not be a problem with gcc 4.5 and the new -flto....
iov: Introduce a new file for helpers around iovs, add iov_from_buf()
The virtio-net code uses iov_fill() which fills an iov from a linearbuffer. The virtio-serial-bus code does something similar in anopen-coded function.
Create a new iov.c file that has iov_from_buf()....
error: Link qemu-img, qemu-nbd, qemu-io with qemu-error.o
The location tracking interface is used by code shared with qemi-img,qemu-nbd and qemu-io, so it needs to be available there. Commit827b0813 provides it in a rather hamfisted way: it adds a dummy...
Compile disassemblers only once
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
install: honor DESTDIR on sysconfdir population
When creating and populating $sysconfdir, we should prepend $DESTDIRas we do with all other paths.
Reported-by: Frank Arnold <frank.arnold@amd.com>Signed-off-by: Andre Przywara <andre.przywara@amd.com>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Documentation: Modify rule for html output (better looking output format)
To create html output from texi input, texi2html was used.Output from makeinfo looks cleaner, so replace the old ruleand use makeinfo now.
For those who want to use their own variant of html output,...
Makefile: Fix names of GPXE ROM files
da51e79b7ff2126cc2448749d657a4f6e3b1270f added two new ROM filesand removed an old one for eepro100.c.
These changes were missing in Makefile (which resultedin a broken "make install").
Reported by Lucas Meneghel Rodrigues, thanks....
Fix 'make install' from non-srcdir build
Commit b5ec5ce0 broke 'make install' from non source-dir build. Fix.
Signed-off-by: Amit Shah <amit.shah@redhat.com>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Add cpu model configuration support..
This is a reimplementation of prior versions which addsthe ability to define cpu models for contemporary processors.The added models are likewise selected via -cpu <name>,and are intended to displace the existing convention...
Documentation: Add build support for documentation in pdf format
Makefile already supported dvi, html and info formats,but pdf was missing.
pdf is especially convenient for printing and fordocumentation reviews. I hope it will help toimprove qemu's documentation....
QDict: New qdict_get_double()
Helper function just like qdict_get_int(), just for QFloat/double.
Signed-off-by: Markus Armbruster <armbru@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Fix generation of config-host.h
This patch improves Anthony patch a6a853c86275efd89996ce59612a000c5873db5d
Once there, it improves handling of object files for qemu tools
cc: Andreas Färber <andreas.faerber@web.de>Signed-off-by: Juan Quintela <quintela@redhat.com>...
make: qemu-img depends on config-host.h
Fixes mingw32 build out of tree.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Makefile: Fix message for missing configure
When make is called without a valid configuration,it should tell the user what to do.
Revision 0e8c9214ba1d4128cf92442cd343bc3733478261was a regression which resulted in a messagewhich was no longer user friendly...
finish VPATH -> vpath translation
This adds a few more vpath suffixes and points the remaining two pathsexplicitly to $(SRC_PATH) in order to eliminate the VPATH assignmentfrom config-host.mak.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Cc: Juan Quintela <quintela@redhat.com>...
Makefile: remove obsolete libuser.a rule
libuser.a was removed by 0e8c9214ba1d4128cf92442cd343bc3733478261.
Use vpath directive
The vpath directive has two advantages over the VPATH variable:1) it allows to skip searching of .o files; 2) the default semanticsare to append to the vpath, so there is no confusion between "VPATH=xyz" and "VPATH+=xyz".
Since "vpath %.c %.h PATH" is not valid, I'm introducing a wrapper...
Makefile: Update unmodified config-devices.mak automatically
This makes rebuilds after source updates easierfor most users (who don't edit config-devices.mak).
Signed-off-by: Stefan Weil <weil@mail.berlios.de>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Drop --whole-archive and static libraries
Juan has contributed a cool Makefile infrastructure that enables us to dropstatic libraries completely:
Move shared obj-y definitions to Makefile.objs, prefixed {common-,hw-,user-},and link those object files directly into the executables....
Fix a make -j race
Make libuser.a depend on $(GENERATED_HEADERS) too so make -j won't startbuilding it before the headers exist. (There may be more bugs like thisbut at least this makes (g)make -j4 started from scratch on a quadcorenow always complete here again.)...
block: Convert bdrv_info() to QObject
Each block device information is stored in a QDict and thereturned QObject is a QList of all devices.
This commit should not change user output.
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
QDict: Introduce qdict_get_qlist()
A helper function to get a QList from a QDict.
Makefile: move QObject objs to their own entry
Other subsystems will need to link against them.
QDict: Introduce qdict_get_qbool()
This is a helper function that does type checking before retrievinga QBool from the dictionary.
Fix build for mingw32 on windows ($$ expansion)
Make using mingw32 on windows fails when running grep "=y$$".The command is expanded to grep "=y$ and the missing " results in an error.
I don't expect a file config-devices.mak with =y somewhere inthe middle of a line (they are always at the end of the line),...
net: move parse_macaddr() to net/util.[ch]
Signed-off-by: Mark McLoughlin <markmc@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
net: move vde code from net.c to net/vde.c
net: move socket backend code from net.c to net/socket.c
net: move dump backend code from net.c to net/dump.c
net: move slirp code from net.c to net/slirp.c
Introduce QError
QError is a high-level data type which represents an exceptionin QEMU, it stores the following error information:
- class Error class name (eg. "ServiceUnavailable")- description A detailed error description, which can contain...
Makefile: Remove unneeded prerequisites
Thanks to f527c57935e22b56952d1ed1af36070b682ecf70(fix parallel build), these prerequisitesare redundant now and can be removed.
Makefile: Fix spelling
Replace defconfing -> defconfig
Signed-off-by: Stefan Weil <weil@mail.berlios.de>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
DS1338 RTC
Implement MAXIM SD1338 RTC+NVRAM.
Signed-off-by: Paul Brook <paul@codesourcery.com>
Makefile dependencies for device configs
Add makefile dependencies for target specific device configs.These will copy the default config if none exists, obsoleting the oldconfigure time code. If a config already exists but is older than thedefault then print a warning....
Add linuxboot to BLOBS
We should install linuxboot.bin too, so let's add it to the to-be-installedblobs.
Signed-off-by: Alexander Graf <agraf@suse.de>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Add a QBool type
Add a lexer for JSON
Our JSON parser is a three stage parser. The first stage tokenizes the streaminto a set of lexical tokens. Since the lexical grammar is regular, we canuse a finite state machine to model it. The state machine will emit tokensas they are identified....
Add a JSON message boundary identifier
The second stage of our JSON parser is a simple state machine that identifiesindividual JSON values by counting the levels of nesting of tokens. It doesnot perform grammar validation. We use this to emit a full JSON value to the...
Add a JSON parser
This is the third and final stage of the JSON parser. It parses lexical tokensperforming grammar validation and creating the final QObject representation. Ituses a recursive decent parser.
Add a QObject JSON wrapper
This provides a QObject interface for creating QObjects from a JSON expression.
Add a unit test for JSON support
Add a QFloat datatype
Add unit test for QFloat
Block live migration
This patch introduces block migration called during live migration. Blockare being copied to the destination in an async way. First the code willtransfer the whole disk and then transfer all dirty blocks accumulted duringthe migration....
fix make clean targets
This patch fixes clean in case of missing directories andalso adds code to distclean that removes the following files: qemu-monitor.texi roms/seabios/config.mak roms/vgabios/config.mak
Signed-off-by: Magnus Damm <damm@opensource.se>...
Makefile: Fix definition of pxe-*.bin blobs
fix parallel build
Based on a ideas of Daniel Jacobowitz + Stefan Weil
Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Makefile: Prettify logging
Replace GEN config-all-devices.makby GEN config-all-devices.mak
Like this, the logging output is column aligned.
Makefile: make qemu-img dependant on config-host.h
Since config-host.h is generated by the Makefile (1215c6e76),building (only) qemu-img fails:
[user@f12-uri qemu]$ make distclean (or git clone qemu)[user@f12-uri qemu]$ ./configure ...[user@f12-uri qemu]$ make qemu-img...
Makefile: make qemu-io dependent on config-host.h
This is needed also for qemu-io, but not for qemu-nbd.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Switch from etherboot to gPXE
etherboot is deprecated and not under active development anymore.
net: move AIX code into net/tap-aix.c
Okay, this makes the tap options available on AIX even though there'sno support, but if we want to do it right we should have not compilethe tap code at all on AIX using e.g. CONFIG_TAP.
Signed-off-by: Mark McLoughlin <markmc@redhat.com>...
net: move linux code into net/tap-linux.c
net: move tap-win32.c under net/
net: split all the tap code out into net/tap.c
net: split BSD tap_open() out into net/tap-bsd.c
net: move solaris code to net/tap-solaris.c
net: move net-queue.[ch] under net/
[v2: handle building in a separate dir]
net: move net-checksum.c under net/
Also add a new net/checksum.h header
Makefile: Change make to be quiet again when doing nothing
This patch makes make quiet again.
There is already a similar patch from Juan Quintela,but maybe this shorter form is preferred.
net: refactor packet queueing code
The packet queue code is fairly standalone, has some complex details andeasily reusable. It makes sense to split it out on its own. This patchdoesn't contain any functional changes.
Patchworks-ID: 35511Signed-off-by: Mark McLoughlin <markmc@redhat.com>...
user: fix libuser build messages
Windows Waveform Audio driver (no ADC support yet)
Signed-off-by: malc <av1474@comtv.ru>
Introduce QList
QList is a high-level data type that can be used to store QObjectsin a singly-linked list.
The following functions are available:
- qlist_new() Create a new QList- qlist_append() Append a QObject to the list- qlist_iter() Iterate over stored QObjects...
Introduce QList unit-tests
This suite contains tests to assure that QList API works as expected.
To execute it you should have check installed and build QEMU withcheck support enabled (--enable-check-utests) and then run:
$ ./check-qlist
Patchworks-ID: 35333...
Only compile sd0323 when one target uses it
Patchworks-ID: 35217Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile ads7846 when one target uses it
Patchworks-ID: 35218Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile max111x when one target uses it
Patchworks-ID: 35219Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile ssi-sd when one target uses it
Patchworks-ID: 35220Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile ssi when one target uses it
Patchworks-ID: 35221Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile tmp105 when one target uses it
Patchworks-ID: 35214Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile stellaris_input when one target uses it
Patchworks-ID: 35213Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile sd0303 when one target uses it
Patchworks-ID: 35216Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile twl92230 when one target uses it
Patchworks-ID: 35212Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile tsc2005 when one target uses it
Patchworks-ID: 35215Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile lm832x when one target uses it
Patchworks-ID: 35211Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile wm8750 when one target uses it
Patchworks-ID: 35209Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile ptimer when one target uses it
Patchworks-ID: 35207Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile sd when one target uses it
Patchworks-ID: 35208Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile max7310 when one target uses it
Patchworks-ID: 35210Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Add new config-devices.mak for each target
We generate config-devices.h from there automatically.We need to do it in main Makefile, because we are going to need a mainMakefile for them.
Patchworks-ID: 35196Signed-off-by: Juan Quintela <quintela@redhat.com>...
Generate config-devices.h
Generate config-devices.h for each target and config-all-devices.h forcommon library. We don't want to name both config-devices.h to avoidpath problems
Patchworks-ID: 35195Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Move generation of config-host.h to Makefile from configure
Use timestamp based appreach to avoid not needed recompilation.Add it to rules.mak
Many thanks to Paolo Bonzini for helpding the design, and the debug.
Patchworks-ID: 35190Signed-off-by: Juan Quintela <quintela@redhat.com>...
Remove useless check for config-host.mak
If config-host.mak dont' exist, we have exited in the check atthe beginning of the file.Once here, move the bits to the else part of the test at the beginning ofthe file.
Patchworks-ID: 35191Signed-off-by: Juan Quintela <quintela@redhat.com>...
Rename config.{h, mak} config-target.{h, mak}
Add config.h file that includes config-target.h and config-host.h
Patchworks-ID: 35193Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
configure and Makefile are not generated in qemu
Just say it to make
add build-all to .PHONY rules
Include microblaze binaries in tarbin.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Compile some user files only once for all targets
Compile host-utils only once
See also facd2857783d58387885ad7cb1e4a8386f241738 and34005a0060c176b3025a9e7c5d064615a9f80325.
Compile TCG runtime library only once
ioports: remove unused env parameter and compile only once
The CPU state parameter is not used, remove it and adjust callers. Now wecan compile ioport.c once for all targets.
Compile qemu-config only once
Add configure option to compile user targets as PIE
Build uset targers as true PIE if user want to keep qemuself-virtualizable.
v5: - Split into to patches: drop link hack and add PIE support - do not build PIE by default and drop toolchain check
v4:...
qdev/scsi: add scsi bus support to qdev, convert drivers.
Adding scsi disks via -device works now, i.e. you can do:
-drive id=sda,if=none,......
qdev/usb: add usb bus support to qdev, convert drivers.
TODO: * make the rest of qemu aware of usb busses and kill the FIXMEs added by this patch....
Introduce QString unit-tests
This suite contains tests to assure that QString API works as expected.
$ ./check-qstring
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>...
Introduce QDict unit-tests
This suite contains tests to assure that QDict API works as expected.
$ ./check-qdict
Introduce QInt unit-tests
This suite contains tests to assure that QInt API works as expected.
$ ./check-qint