summary refs log tree commit diff stats
path: root/scripts/qapi/doc.py (unfollow)
Commit message (Collapse)AuthorFilesLines
2020-09-09net/colo: Match is-enabled probe to tracepointRoman Bolshakov3-24/+30
Build of QEMU with dtrace fails on macOS: LINK x86_64-softmmu/qemu-system-x86_64 error: probe colo_compare_miscompare doesn't exist error: Could not register probes ld: error creating dtrace DOF section for architecture x86_64 The reason of the error is explained by Adam Leventhal [1]: Note that is-enabled probes don't have the stability magic so I'm not sure how things would work if only is-enabled probes were used. net/colo code uses is-enabled probes to determine if other probes should be used but colo_compare_miscompare itself is not used explicitly. Linker doesn't include the symbol and build fails. The issue can be resolved if is-enabled probe matches the actual trace point that is used inside the test. Packet dump toggle is replaced with a compile-time conditional definition. 1. http://markmail.org/message/6grq2ygr5nwdwsnb Fixes: f4b618360e ("colo-compare: add TCP, UDP, ICMP packet comparison") Cc: Philippe Mathieu-Daudé <philmd@redhat.com> Cc: Cameron Esfahani <dirty@apple.com> Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com> Reviewed-by: Zhang Chen <chen.zhang@intel.com> Message-id: 20200717093517.73397-5-r.bolshakov@yadro.com Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2020-09-09scripts/tracetool: Use void pointer for vcpuRoman Bolshakov1-1/+1
dtrace on macOS complains that CPUState * is used for a few probes: dtrace: failed to compile script trace-dtrace-root.dtrace: line 130: syntax error near "CPUState" A comment in scripts/tracetool/__init__.py mentions that: We only want to allow standard C types or fixed sized integer types. We don't want QEMU specific types as we can't assume trace backends can resolve all the typedefs Fixes: 3d211d9f4dbee ("trace: Add 'vcpu' event property to trace guest vCPU") Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com> Message-id: 20200717093517.73397-3-r.bolshakov@yadro.com Cc: Cameron Esfahani <dirty@apple.com> Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2020-09-09scripts/tracetool: Fix dtrace generation for macOSRoman Bolshakov1-1/+14
dtrace USDT is fully supported since OS X 10.6. There are a few peculiarities compared to other dtrace flavors. 1. It doesn't accept empty files. 2. It doesn't recognize bool type but accepts C99 _Bool. 3. It converts int8_t * in probe points to char * in header files and introduces [-Wpointer-sign] warning. Cc: Cameron Esfahani <dirty@apple.com> Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Message-id: 20200717093517.73397-2-r.bolshakov@yadro.com Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2020-09-09softmmu: Add missing trace-events filePhilippe Mathieu-Daudé8-31/+34
Commit c7f419f584 moved softmmu-only files out of the root directory, but forgot to move the trace events, which should no longer be generated to "trace-root.h". Fix that by adding softmmu/trace-events. Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> Tested-by: Claudio Fontana <cfontana@suse.de> Reviewed-by: Claudio Fontana <cfontana@suse.de> Message-id: 20200805130221.24487-1-philmd@redhat.com [Rebased onto meson. --Stefan] Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2020-09-08docs: update build system documentationPaolo Bonzini1-86/+11
Most of the Makefile bits are obsolete and can be removed. Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: remove linkage of sdl to baumBruce Rogers1-2/+2
Ever since commit 537fe2d63f744e7c96ff45b60d09486a81958e06 there has been a 'linkage' to sdl for compiling baum.c. Originally it had to do with including sdl cflags for any file including sdl headers. There is no longer any such need for baum.c, but the association has persisted in the make system, and with the switch to meson it has now become a hard requirement, which now causes chardev-baum.so to not be produced if sdl is not configured. Remove this bogus linkage. Signed-off-by: Bruce Rogers <brogers@suse.com> Message-Id: <20200903152933.97838-1-brogers@suse.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: Convert undefsym.sh to undefsym.pyYonggang Luo3-21/+50
Shell scripts are not easily invoked from the build process on MSYS, so convert undefsym.sh to a python script. Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Message-Id: <20200902170054.810-3-luoyonggang@gmail.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08fuzz: Add support for custom fuzzing libraryAlexander Bulekov2-4/+12
On oss-fuzz, we must use the LIB_FUZZING_ENGINE and CFLAGS environment variables, rather than -fsanitize=fuzzer. With this change, when LIB_FUZZING_ENGINE is set, the --enable-fuzzing configure option will use that environment variable during the linking stage, rather than -fsanitize=fuzzer Signed-off-by: Alexander Bulekov <alxndr@bu.edu> Message-Id: <20200902173652.307222-3-alxndr@bu.edu> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: specify fuzz linker script as a project argAlexander Bulekov2-4/+8
With this change, the fuzzer-linker script should be specified outside any --start-group/--end-group pairs. We need this on oss-fuzz, where partially applying the linker-script results in a linker failure Signed-off-by: Alexander Bulekov <alxndr@bu.edu> Message-Id: <20200902173652.307222-2-alxndr@bu.edu> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08oss-fuzz: fix rpathAlexander Bulekov1-1/+1
Prior to this change, readelf -d build/out/qemu/qemu-fuzz-i386-target-virtio-net-slirp ... 0x000000000000000f (RPATH) Library rpath: ['$$ORIGIN/lib':$ORIGIN/migration:$ORIGIN/] As of 1a4db552d8 ("ninjatool: quote dollars in variables"), we don't need to manually double the dollars. Also, remove the single-quotes as they are copied into the rpath. After this change: 0x000000000000000f (RPATH) Library rpath: [$ORIGIN/lib:$ORIGIN/migration:$ORIGIN/] Signed-off-by: Alexander Bulekov <alxndr@bu.edu> Message-Id: <20200902142657.112879-3-alxndr@bu.edu> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08configure: update dtc submoduleYonggang Luo1-4/+7
Update the dtc submodule in configure already and symlink dtc after git submodule update, because on win32 symlinks to non-existing folders are forbidden. Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Message-Id: <20200902170054.810-2-luoyonggang@gmail.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08docs: suggest Meson replacements for various configure functionsPaolo Bonzini1-3/+7
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08configure: drop dead variables and functionsPaolo Bonzini1-15/+1
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08configure: do not include dependency flags in QEMU_CFLAGS and LIBSPaolo Bonzini7-46/+7
All Meson executables should specify their dependencies explicitly, either directly or indirectly via declare_dependency. Makefiles instead did not propagate dependencies correctly from static libraries, for example. Therefore, flags for dependencies need not be included in QEMU_CFLAGS. LIBS is not used at all, so drop that one as well. In a few cases the dependencies were not yet specified, so add them. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: get opengl compilation flags from OPENGL_CFLAGSPaolo Bonzini2-1/+3
The opengl compilation flags were added to QEMU_CFLAGS. We do not want them to be added to all compilation commands, so export them also via OPENGL_CFLAGS rather than via QEMU_CFLAGS. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: get glib compilation flags from GLIB_CFLAGSPaolo Bonzini2-12/+14
The glib compilation flags were added to QEMU_CFLAGS. While we still want them to be added to all compilation commands (at least for now), do that via GLIB_CFLAGS rather than via QEMU_CFLAGS. This shows that glib is a special case and makes it clearer that QEMU_CFLAGS is only about compiler commands and not dependencies. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08configure: do not look for install(1)Paolo Bonzini3-56/+2
It is not used anymore, so there is no Solaris-specific check to perform. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08configure: remove unnecessary libm testPaolo Bonzini1-14/+0
The same test is already performed by meson.build. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08configure: move -ldl test to mesonPaolo Bonzini3-2/+5
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: keep all compiler flags detection togetherPaolo Bonzini1-13/+17
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08configure: move disassembler configuration to mesonPaolo Bonzini4-94/+45
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08Makefile: inline the relevant parts of rules.makPaolo Bonzini5-180/+26
Most of rules.mak is not used anymore, just inline what's needed. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08Makefile: remove dead variables and includesPaolo Bonzini3-94/+0
Makefile.objs, the .d files and various CONFIG_* symbols are not used anymore by the Make side of the build; they are only processed by Meson. We can delete them. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: compute config_all_devices directlyPaolo Bonzini3-16/+2
There is no need anymore to produce config-all-devices.mak, compute the resulting dictionary directly instead of going through grepy.sh. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08configure: remove dead code for in-tree buildsPaolo Bonzini1-12/+2
The $pwd_is_source_path variable is never "y", since configure re-executes itself from a build directory. Remove code that will never run. Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: convert migration/initrd-stressMarc-André Lureau4-14/+25
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20200828110734.1638685-17-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: fix migration/stress compilation with glibc>=2.30Marc-André Lureau2-0/+5
gettid() was introduced with glibc 2.30. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20200828110734.1638685-16-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08tests/migration/stress: remove unused exit_successMarc-André Lureau1-13/+0
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20200828110734.1638685-15-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: convert the speed testsPaolo Bonzini4-13/+29
Use meson benchmark() for them, adjust mtest2make.py for that. A new target "make bench" can be used to run all benchmarks. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20200828110734.1638685-14-marcandre.lureau@redhat.com> [Rewrite mtest2make part. - Paolo] Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08tests: do not print benchmark output to stdoutMarc-André Lureau3-9/+9
As this makes the TAP output invalid. Use g_test_message(). Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Message-Id: <20200828110734.1638685-13-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: convert atomic*-benchMarc-André Lureau2-5/+10
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20200828110734.1638685-11-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: convert vhost-user-bridgeMarc-André Lureau2-2/+9
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20200828110734.1638685-10-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: remove old socket_scm_helper ruleMarc-André Lureau1-1/+0
It was covered already in commit d3ca592b3c10 ("meson: convert check-block") Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20200828110734.1638685-9-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: move keyutils dependency checkMarc-André Lureau2-29/+3
Since there is not minimum version specified, and it's a test-only dependency, it's fair to depend on a version that ships with a .pc I suppose. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20200828110734.1638685-8-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: convert the unit testsMarc-André Lureau3-253/+174
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20200828110734.1638685-7-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08ipxe: update binariesGerd Hoffmann8-0/+0
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2020-09-08ipxe: drop ia32 efi romsGerd Hoffmann1-2/+0
UEFI on ia32 never really took off. Basically the BIOS -> UEFI shift came too late, x64 was widespread already, so vendors went from BIOS straight to UEFI on x64. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2020-09-08ipxe: update submoduleGerd Hoffmann1-0/+0
master snapshot, most recent commit from Aug 23th shortlog ======== Andrew Grasso (1): [intel] Add INTEL_NO_PHY_RST for I218LM Ben Bleything (1): [intel] Set INTEL_NO_PHY_RST on i218v Bobby Lockwood (1): [libgcc] Change __divmoddi4 from int64 [unknown] to int64_t Bruce Rogers (1): [build] Be explicit about -fcommon compiler directive Christian Nilsson (1): [intel] Add PCI ID for I219-V and -LM 6 to 9 Daniel Johnson (1): [deflate] Fix typo in comment describing length codes David Decotigny (2): [pcbios] Fix "out of memory" detection when expanding bottom area [pcbios] Take alignment into account when checking for available space Dentcho Ludmilov Bankov (1): [comboot] Fix stack pointer retrieval after COM32 binary returns Ignat Korchagin (3): [snp] Try promiscuous multicast receive filter if the regular one fails [snp] Set EFI_SIMPLE_NETWORK_RECEIVE_MULTICAST bit as per UEFI spec [efi] Check the status code from AllocatePool() Joe Groocock (1): [cmdline] Add "--timeout" parameter to "ifconf" command Joseph Wong (1): [bnxt] Add driver support for Broadcom NetXtreme-E Adapters LaDerrick H (1): [sfc] Add PCI ID for Solarflare SFC9120 and Solarflare SFC9140 Michael Brown (105): [init] Show startup and shutdown function names in debug messages [efi] Blacklist the Dell Ip4ConfigDxe driver [tls] Support stateful session resumption [tls] Fix incorrectly duplicated error number [tls] Support stateless session resumption [crypto] Use x509_name() in validator debug messages [tls] Display cross-certificate and OCSP status messages [tls] Display validator messages only while validation is in progress [tcp] Display "connecting" status until connection is established [ocsp] Accept response certID with missing hashAlgorithm parameters [pci] Add support for PCI MSI-X interrupts [vlan] Provide vlan_netdev_rx() and vlan_netdev_rx_err() [intelxl] Use VLAN tag in receive descriptor if present [intelxl] Allow for virtual function admin queue register maps [intelxl] Use one admin queue buffer per admin queue descriptor [intelxl] Allow admin queues to be reinitialised [intelxl] Allow admin cookie to hold extended opcode and return code [intelxl] Provide a mechanism for handling "send to VF" events [intelxl] Use 32-byte receive descriptors [intelxl] Allow for arbitrary placement of ring tail registers [intelxl] Split out ring creation from context programming [intelxl] Allow for arbitrary placement of interrupt control register [intelxl] Expose functions required by virtual function driver [intelxl] Choose to operate in non-PXE mode [intelxl] Add driver for Intel 40 Gigabit Ethernet NIC virtual functions [build] Fix use of inline assembly on GCC 8 ARM64 builds [arm] Provide dummy implementations for {in,out}[s]{b,w,l} [efi] Return only registered EFI devices from efidev_parent() [fdt] Add ability to parse a MAC address from a flattened device tree [efi] Register a device tree if provided by the platform firmware [smsc95xx] Fetch MAC from device tree for Raspberry Pi [build] Add named configuration for Raspberry Pi [smscusb] Fetch MAC from device tree for Raspberry Pi Model B+ [build] Do not apply WORKAROUND_CFLAGS for host compiler [build] Move predefined all-drivers build shortcut to Makefile [build] Add predefined shortcut for Raspberry Pi builds [process] Add PROC_INIT() for initialising static processes [peerdist] Start block download timers from within opener methods [peerdist] Limit number of concurrent raw block downloads [tls] Add missing call to tls_tx_resume() when restarting negotiation [crypto] Drag in configured digestInfo prefixes for any use of RSA [crypto] Profile the various stages of modular multiplication [coverity] Override assumptions about wcrtomb() and hmac_init() [ethernet] Avoid false positive Coverity warning [golan] Fix address-of-pointer bug for multicast attach/detach [efi] Report failed control transfers as expected by the USB core [efi] Do not attempt EFI_USB_IO_PROTOCOL transfers during shutdown [lan78xx] Always enable automatic speed and duplex detection [peerdist] Allow PeerDist to be globally enabled or disabled [peerdist] Allow for the use of a hosted cache server [build] Construct full version number automatically from git revision [travis] Ensure that most recent tag is always available [tftp] Eliminate unnecessary variable-length stack allocation [infiniband] Eliminate variable-length stack allocation [slam] Eliminate variable-length stack allocation [slam] Allow for the possibility of IPv6 multicast addresses [settings] Eliminate variable-length stack allocation [iscsi] Eliminate variable-length stack allocations in CHAP handlers [iscsi] Eliminate variable-length stack allocation in URI parsing [bios] Define macros for constructing partition table entries [int13con] Create log partition only when CONSOLE_INT13 is enabled [efi] Disambiguate errors returned by ConnectController [png] Fix potential integer overflow [efi] Work around UEFI specification bug in LoadImage [efi] Work around UEFI specification bug in LoadImage for SAN boot [uri] Avoid appearing to access final byte of a potentially empty string [efi] Attempt to connect our driver directly if ConnectController fails [tls] Allow a minimum TLS protocol version to be specified [tls] Default to supporting only TLSv1.1 or above [crypto] Allow algorithms to be included without being OID-identifiable [crypto] Ensure that test code drags in required ASN.1 object identifiers [crypto] Disable MD5 as an OID-identifiable algorithm by default [snp] Retry initialisation if link is reported as down [util] Treat empty integer strings as invalid [parseopt] Treat empty integer strings in user input as invalid [efi] Enable stack protection where possible [ocsp] Accept SHA1 certID responses even if SHA1 is not enabled [intel] Avoid spurious compiler warning on GCC 10 [golan] Add explicit type casts for nodnic_queue_pair_type [build] Disable position-independent code for ARM64 EFI builds [efi] Detect and disable seriously broken EFI_RNG_PROTOCOL implementations [efi] Raise TPL during driver entry point [axge] Handle non-gigabit link speeds [usb] Clear device endpoint halt before resetting host endpoint [usb] Add missing usb_recycle() for completed hub interrupt transfers [usb] Do not attempt to disable USB3 hub ports [xhci] Set link state to RxDetect after disabling USB3 root hub port [usb] Avoid unnecessary calls to usb_hub_set_drvdata() [xhci] Increase link state settling delay to 100ms [axge] Reapply USB device configuration when opening network device [usb] Leave port enabled after a failed device registration [crypto] Avoid temporarily setting direction flag in bigint_is_geq() [libc] Provide an unoptimised generic_memcpy_reverse() [efi] Avoid setting direction flag on EFI platforms [libc] Add bit-rotation functions for unsigned long values [efi] Distribute available entropy within stack cookie [efi] Ensure NUL byte is at lowest address within stack cookie [efi] Claim SNP devices early in efi_download_start() [xfer] Remove address family from definition of a socket opener [dns] Use all configured DNS servers [wpa] Fix erroneous debug message in wpa_derive_ptk [efi] Match EDK2 numbering for USB ports [efi] Use device path to locate filesystem from which we were loaded [efi] Attempt NII initialisation both with and without cable detection [build] Fix building on older versions of gcc Michael J. Bazzinotti (1): [libc] Fix memcmp() to return proper values Mohammed (1): [golan] Add various new PCI device IDs Rob Taglang (1): [intelx] Added PCI_ROM entry for Intel x553/x557-AT and x553 (SFP+) NICs Tobias Kortkamp (1): [build] Fix a GNUism that FreeBSD's sed(1) cannot deal with Valentine Barshak (2): [build] Fix "'%s' directive argument is null" error [build] Workaround compilation error with gcc 9.1 bit (1): [build] Fix default target in sdsk image Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2020-09-08meson: convert qht-benchMarc-André Lureau2-1/+4
This is required by test-qht-par unit test. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20200828110734.1638685-5-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: declare keyutils dependencyMarc-André Lureau4-7/+11
Rename the variable to be more explicit. A further clean-up patch will move the actual to dependency check to meson entirely. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20200828110734.1638685-4-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: declare tasn1 dependencyMarc-André Lureau1-0/+5
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20200828110734.1638685-3-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: build qapi tests libraryMarc-André Lureau3-78/+62
- builds QAPI builtins types/visitor to fix a linking issue with unresolved symbols in the static library. - work around a meson limitation on generated file output directories. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20200828110734.1638685-2-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: fix libqos linkingPaolo Bonzini1-3/+6
Add genh to the sources to avoid race conditions between QAPI file generation and libqos compilation. Make the name_suffix .fa for consistency with other link_whole static libraries and to work around a Meson issue where lots of linker flags are placed between -Wl,--start-group and -Wl,--end-group and this breaks the fork-fuzz.ld linker script. Reported-by: Claudio Fontana <cfontana@suse.de> Reported-by: Alexander Bulekov <alxndr@bu.edu> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08ninjatool: use constant names for stamp filesPaolo Bonzini1-3/+5
Numbering files according to rules causes confusion, because CUSTOM_COMMAND3.stamp from a previous build might represent completely different targets after Makefile.ninja is regenerated. As a result, the new targets are not rebuilt and compilation fails. Use the targets to build a SHA1 hash; the chances for collision are one in 2^24 even with a 12-character prefix of the hash. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08configure: include cross sdl2-config in meson cross filePaolo Bonzini1-0/+3
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08configure: do not include absolute paths in -I and -L pathsPaolo Bonzini1-5/+5
On msys2, paths such as -L/e/path/to/qemu are not recognized by the linker. Fortunately we do not need absolute paths at all in a non-recursive build system. Tested-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08meson: remove b_lundef optionPaolo Bonzini1-1/+1
Meson automatically adds "-undefined dynamic_lookup" to shared_module build targets; b_lundef is only needed for executables. Therefore, we can remove this option. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08mtest2make: unify tests that appear in multiple suitesPaolo Bonzini1-36/+38
Whenever a test appears in multiple suites, the rules generated by mtest2make are currently running it twice. Instead, after this patch we generate a phony target for each test and we have a generic "run-tests" target depend on all the tests that were chosen on the command line. Tests that appear in multiple suites will be added to the prerequisites just once. This has other advantages: it removes the handling of -k and it increases parallelism. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08mtest2make: hide output of successful testsPaolo Bonzini2-1/+36
The softfloat tests are quite noisy; before the Meson conversion they buffered the output in a file and emitted the output only if the test failed. Tweak mtest2make.py so that the courtesy is extended to all non-TAP tests. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08mtest2make: split working directory from test commandPaolo Bonzini1-8/+8
Pass the working directory and test command in separate macro arguments, so that we will be able to insert a test driver in the next patch. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>