* [PULL v6 000/150] Meson-based build system
@ 2020-08-19 14:35 Paolo Bonzini
2020-08-19 18:12 ` Peter Maydell
0 siblings, 1 reply; 14+ messages in thread
From: Paolo Bonzini @ 2020-08-19 14:35 UTC (permalink / raw)
To: qemu-devel
The following changes since commit d0ed6a69d399ae193959225cdeaa9382746c91cc:
Update version for v5.1.0 release (2020-08-11 17:07:03 +0100)
are available in the Git repository at:
https://gitlab.com/bonzini/qemu.git tags/for-upstream
for you to fetch changes up to f5b5ef3b9f94d744f514f5469c97d3f80305111e:
docs: convert build system documentation to rST (2020-08-19 10:01:48 -0400)
v5->v6: improved incremental build
----------------------------------------------------------------
New build system.
Missing:
* converting configure tests
* converting unit tests
* converting some remaining parts of the installation
----------------------------------------------------------------
Marc-André Lureau (90):
optionrom: simplify Makefile
build-sys hack: ensure target directory is there
configure: expand path variables for meson configure
configure: generate Meson cross file
build-sys hack: link with whole .fa archives
build-sys: add meson submodule
meson: enable pie
meson: use coverage option
meson: add remaining generated tcg trace helpers
meson: add version.o
contrib/vhost-user-input: convert to meson
contrib/vhost-user-gpu: convert to meson
contrib/ivshmem: convert to meson
contrib/elf2dmp: convert to meson
meson: add macos dependencies
meson: convert vss-win32
meson: add msi generation
meson: add qemu-bridge-helper
meson: add qemu-keymap
meson: add qemu-edid
meson: add virtfs-proxy-helper
meson: keymap-gen
meson: generate qemu-version.h
meson: generate shader headers
meson: generate hxtool files
meson: handle edk2 bios and descriptors
meson: convert qom directory to Meson (tools part)
meson: convert authz directory to Meson
meson: convert crypto directory to Meson
meson: convert io directory to Meson
meson: convert target/s390x/gen-features.h
meson: add modules infrastructure
meson: convert chardev directory to Meson (tools part)
meson: convert block
meson: qemu-{img,io,nbd}
meson: qemu-pr-helper
meson: convert ui directory to Meson
meson: convert trace/
meson: convert dump/
meson: convert replay directory to Meson
meson: convert migration directory to Meson
meson: convert net directory to Meson
meson: convert backends directory to Meson
meson: convert fsdev/
meson: convert disas directory to Meson
meson: convert qapi-specific to meson
meson: convert hw/xen
meson: convert hw/core
meson: convert hw/smbios
meson: convert hw/mem
meson: convert hw/watchdog
meson: convert hw/virtio
meson: convert hw/vfio
meson: convert hw/ssi
meson: convert hw/sd
meson: convert hw/scsi
meson: convert hw/pcmcia
meson: convert hw/pci-host
meson: convert hw/pci-bridge
meson: convert hw/pci
meson: convert hw/nvram
meson: convert hw/rdma
meson: convert hw/net
meson: convert hw/misc
meson: convert hw/isa
meson: convert hw/ipmi
meson: convert hw/ipack
meson: convert hw/intc
meson: convert hw/input
meson: convert hw/ide
meson: convert hw/i2c
meson: convert hw/hyperv
meson: convert hw/gpio
meson: convert hw/dma
meson: convert hw/display
meson: convert hw/cpu
meson: convert hw/char
meson: convert hw/block
meson: convert hw/audio
meson: convert hw/adc
meson: convert hw/acpi
meson: convert hw/9pfs, cleanup
meson: convert hw/arch*
meson: accel
meson: linux-user
meson: bsd-user
meson: cpu-emu
meson: convert systemtap files
rules.mak: remove version.o
meson: convert po/
Paolo Bonzini (60):
oss-fuzz/build: remove LIB_FUZZING_ENGINE
trace: switch position of headers to what Meson requires
meson: rename included C source files to .c.inc
meson: rename .inc.h files to .h.inc
tests/vm: do not pollute configure with --efi-aarch64
tests/vm: check for Python YAML parser in the Makefile
tests/docker: add test script for static linux-user builds
nsis: use "make DESTDIR=" instead of "make prefix="
configure: do not include $(...) variables in config-host.mak
configure: prepare CFLAGS/CXXFLAGS/LDFLAGS for Meson
tests/vm: include setuptools
configure: integrate Meson in the build system
meson: move summary to meson.build
meson: add sparse support
meson: add testsuite Makefile generator
libqemuutil, qapi, trace: convert to meson
contrib/libvhost-user: convert to Meson
tools/virtiofsd: convert to Meson
contrib/vhost-user-blk: convert to Meson
vhost-user-scsi: add compatibility for libiscsi 1.9.0
contrib/vhost-user-scsi: convert to Meson
contrib/rdmacm-mux: convert to Meson
meson: add solaris and Haiku libraries
meson: convert qemu-ga
meson: convert dummy Windows qga/qemu-ga target
meson: convert check-decodetree
meson: convert tests/fp and check-softfloat
meson: convert check-qapi-schema
meson: infrastructure for building emulators
configure, Makefile; remove TOOLS and HELPERS-y variable
meson: convert chardev directory to Meson (emulator part)
meson: convert tests/qtest to meson
meson: convert audio directory to Meson
meson: convert root directory to Meson
meson: convert most of softmmu/
meson: convert common QMP bits for qemu and qemu-storage-daemon
QMP bits Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
meson: convert qemu-storage-daemon
meson: convert hw/semihosting
meson: convert hw/nubus
meson: convert hw/usb
meson: convert hw/tpm
meson: convert hw/timer
meson: convert hw/rtc
meson: target
meson: plugins
meson: link emulators without Makefile.target
remove Makefile.target
meson: sphinx-build
docs: automatically track manual dependencies
meson: build texi doc
meson: convert check-block
rules.mak: drop unneeded macros
meson: replace create-config with meson configure_file
meson: convert sample plugins
meson: move SDL and SDL-image detection to meson
meson: convert VNC and dependent libraries to meson
meson: avoid unstable module warning with Meson 0.56.0 or newer
meson: update build-system documentation
docs: convert build system documentation to rST
Thomas Huth (1):
pc-bios/s390-ccw: do not use rules.mak
.editorconfig | 3 +-
.gitignore | 6 +-
.gitlab-ci.yml | 6 +-
.gitmodules | 3 +
Makefile | 1013 +-------------
Makefile.objs | 219 +--
Makefile.target | 287 ----
accel/Makefile.objs | 6 -
accel/kvm/Makefile.objs | 2 -
accel/kvm/meson.build | 5 +
accel/kvm/trace.h | 1 +
accel/meson.build | 7 +
accel/stubs/Makefile.objs | 6 -
accel/stubs/meson.build | 6 +
accel/tcg/Makefile.objs | 9 -
.../{atomic_common.inc.c => atomic_common.c.inc} | 0
accel/tcg/cputlb.c | 4 +-
accel/tcg/meson.build | 15 +
accel/tcg/trace.h | 1 +
accel/tcg/user-exec.c | 4 +-
accel/xen/Makefile.objs | 1 -
accel/xen/meson.build | 1 +
audio/Makefile.objs | 35 -
audio/meson.build | 30 +
audio/trace.h | 1 +
authz/Makefile.objs | 7 -
authz/meson.build | 19 +
authz/trace.h | 1 +
backends/Makefile.objs | 23 -
backends/meson.build | 19 +
backends/tpm/Makefile.objs | 4 -
backends/tpm/meson.build | 8 +
backends/tpm/trace.h | 1 +
backends/trace.h | 1 +
block.c | 4 +-
block/Makefile.objs | 75 -
block/meson.build | 115 ++
block/monitor/Makefile.objs | 2 -
block/monitor/meson.build | 2 +
block/trace.h | 1 +
bsd-user/Makefile.objs | 2 -
bsd-user/meson.build | 10 +
chardev/Makefile.objs | 29 -
chardev/meson.build | 45 +
chardev/trace.h | 1 +
configure | 1134 +++++----------
contrib/elf2dmp/Makefile.objs | 4 -
contrib/elf2dmp/meson.build | 5 +
contrib/gitdm/filetypes.txt | 2 +-
contrib/ivshmem-client/Makefile.objs | 1 -
contrib/ivshmem-client/meson.build | 4 +
contrib/ivshmem-server/Makefile.objs | 1 -
contrib/ivshmem-server/meson.build | 4 +
contrib/libvhost-user/Makefile.objs | 1 -
contrib/libvhost-user/meson.build | 3 +
contrib/rdmacm-mux/Makefile.objs | 3 -
contrib/rdmacm-mux/meson.build | 9 +
contrib/vhost-user-blk/Makefile.objs | 1 -
contrib/vhost-user-blk/meson.build | 6 +
contrib/vhost-user-gpu/Makefile.objs | 10 -
contrib/vhost-user-gpu/meson.build | 13 +
contrib/vhost-user-input/Makefile.objs | 1 -
contrib/vhost-user-input/meson.build | 5 +
contrib/vhost-user-scsi/Makefile.objs | 1 -
contrib/vhost-user-scsi/meson.build | 7 +
contrib/vhost-user-scsi/vhost-user-scsi.c | 2 +
crypto/Makefile.objs | 43 -
crypto/meson.build | 63 +
crypto/trace.h | 1 +
disas/Makefile.objs | 30 -
disas/libvixl/Makefile.objs | 5 -
disas/libvixl/meson.build | 7 +
disas/meson.build | 27 +
dma-helpers.c | 2 +-
docs/conf.py | 2 +-
docs/devel/blkverify.txt | 4 +-
docs/devel/build-system.rst | 500 +++++++
docs/devel/build-system.txt | 519 -------
docs/devel/index.rst | 1 +
docs/devel/testing.rst | 11 +-
docs/devel/tracing.txt | 2 +-
docs/index.html.in | 4 +-
docs/interop/live-block-operations.rst | 4 +-
docs/interop/qemu-ga-ref.texi | 2 +-
docs/interop/qemu-qmp-ref.texi | 2 +-
docs/meson.build | 73 +
docs/sphinx/depfile.py | 51 +
dump/Makefile.objs | 3 -
dump/meson.build | 4 +
exec.c | 6 +-
...specialize.inc.c => softfloat-specialize.c.inc} | 0
fpu/softfloat.c | 2 +-
fsdev/Makefile.objs | 12 -
fsdev/meson.build | 18 +
gdbstub.c | 2 +-
hw/9pfs/Kconfig | 4 +
hw/9pfs/Makefile.objs | 9 -
hw/9pfs/meson.build | 20 +
hw/9pfs/trace.h | 1 +
hw/Makefile.objs | 48 -
hw/acpi/Makefile.objs | 26 -
hw/acpi/meson.build | 25 +
hw/acpi/trace.h | 1 +
hw/adc/Makefile.objs | 1 -
hw/adc/meson.build | 1 +
hw/alpha/Makefile.objs | 1 -
hw/alpha/meson.build | 8 +
hw/alpha/trace.h | 1 +
hw/arm/Makefile.objs | 56 -
hw/arm/meson.build | 59 +
hw/arm/trace.h | 1 +
hw/audio/Makefile.objs | 18 -
hw/audio/meson.build | 14 +
hw/audio/trace.h | 1 +
hw/avr/Makefile.objs | 3 -
hw/avr/meson.build | 6 +
hw/block/Makefile.objs | 18 -
hw/block/dataplane/Makefile.objs | 2 -
hw/block/dataplane/meson.build | 2 +
hw/block/dataplane/trace.h | 1 +
hw/block/meson.build | 21 +
hw/block/trace.h | 1 +
hw/char/Makefile.objs | 39 -
hw/char/meson.build | 38 +
hw/char/trace.h | 1 +
hw/core/Makefile.objs | 34 -
hw/core/cpu.c | 2 +-
hw/core/meson.build | 49 +
hw/core/trace.h | 1 +
hw/cpu/Makefile.objs | 5 -
hw/cpu/meson.build | 6 +
hw/cris/Makefile.objs | 2 -
hw/cris/meson.build | 5 +
hw/display/Makefile.objs | 65 -
hw/display/meson.build | 84 ++
hw/display/trace.h | 1 +
hw/dma/Makefile.objs | 16 -
hw/dma/meson.build | 15 +
hw/dma/trace.h | 1 +
hw/gpio/Makefile.objs | 12 -
hw/gpio/meson.build | 12 +
hw/gpio/trace.h | 1 +
hw/hppa/Makefile.objs | 1 -
hw/hppa/meson.build | 4 +
hw/hppa/trace.h | 1 +
hw/hyperv/Makefile.objs | 3 -
hw/hyperv/meson.build | 3 +
hw/hyperv/trace.h | 1 +
hw/i2c/Makefile.objs | 14 -
hw/i2c/meson.build | 16 +
hw/i2c/trace.h | 1 +
hw/i386/Makefile.objs | 20 -
hw/i386/fw_cfg.c | 2 +-
hw/i386/kvm/Makefile.objs | 5 -
hw/i386/kvm/meson.build | 8 +
hw/i386/meson.build | 32 +
hw/i386/pc.c | 2 +-
hw/i386/pc_piix.c | 2 +-
hw/i386/trace.h | 1 +
hw/i386/x86.c | 2 +-
hw/i386/xen/Makefile.objs | 1 -
hw/i386/xen/meson.build | 7 +
hw/i386/xen/trace.h | 1 +
hw/ide/Makefile.objs | 14 -
hw/ide/meson.build | 14 +
hw/ide/trace.h | 1 +
hw/input/Makefile.objs | 18 -
hw/input/meson.build | 18 +
hw/input/trace.h | 1 +
hw/intc/Makefile.objs | 54 -
hw/intc/meson.build | 55 +
hw/intc/trace.h | 1 +
hw/ipack/Makefile.objs | 2 -
hw/ipack/meson.build | 1 +
hw/ipmi/Makefile.objs | 8 -
hw/ipmi/meson.build | 11 +
hw/isa/Makefile.objs | 11 -
hw/isa/meson.build | 11 +
hw/isa/trace.h | 1 +
hw/lm32/Makefile.objs | 3 -
hw/lm32/meson.build | 6 +
hw/m68k/Makefile.objs | 4 -
hw/m68k/meson.build | 7 +
hw/mem/Kconfig | 1 +
hw/mem/Makefile.objs | 3 -
hw/mem/meson.build | 6 +
hw/mem/trace.h | 1 +
hw/meson.build | 67 +
hw/microblaze/Makefile.objs | 4 -
hw/microblaze/meson.build | 7 +
hw/mips/Makefile.objs | 8 -
hw/mips/meson.build | 11 +
hw/mips/trace.h | 1 +
hw/misc/Makefile.objs | 95 --
hw/misc/macio/Makefile.objs | 5 -
hw/misc/macio/meson.build | 8 +
hw/misc/macio/trace.h | 1 +
hw/misc/meson.build | 99 ++
hw/misc/trace.h | 1 +
hw/moxie/Makefile.objs | 2 -
hw/moxie/meson.build | 4 +
hw/net/Makefile.objs | 59 -
hw/net/can/Makefile.objs | 4 -
hw/net/can/meson.build | 4 +
hw/net/meson.build | 67 +
hw/net/trace.h | 1 +
hw/nios2/Makefile.objs | 3 -
hw/nios2/meson.build | 6 +
hw/nubus/Makefile.objs | 4 -
hw/nubus/meson.build | 7 +
hw/nvram/Makefile.objs | 8 -
hw/nvram/meson.build | 9 +
hw/nvram/trace.h | 1 +
hw/openrisc/Makefile.objs | 2 -
hw/openrisc/meson.build | 5 +
hw/pci-bridge/Makefile.objs | 10 -
hw/pci-bridge/meson.build | 14 +
hw/pci-host/Makefile.objs | 24 -
hw/pci-host/meson.build | 31 +
hw/pci-host/trace.h | 1 +
hw/pci/Makefile.objs | 14 -
hw/pci/meson.build | 19 +
hw/pci/trace.h | 1 +
hw/pcmcia/Makefile.objs | 2 -
hw/pcmcia/meson.build | 2 +
hw/ppc/Makefile.objs | 35 -
hw/ppc/meson.build | 80 ++
hw/ppc/trace.h | 1 +
hw/rdma/Makefile.objs | 3 -
hw/rdma/meson.build | 10 +
hw/rdma/trace.h | 1 +
hw/rdma/vmw/trace.h | 1 +
hw/riscv/Makefile.objs | 16 -
hw/riscv/meson.build | 19 +
hw/riscv/trace.h | 1 +
hw/rtc/Makefile.objs | 15 -
hw/rtc/meson.build | 16 +
hw/rtc/trace.h | 1 +
hw/rx/Makefile.objs | 2 -
hw/rx/meson.build | 5 +
hw/s390x/Makefile.objs | 37 -
hw/s390x/meson.build | 46 +
hw/s390x/trace.h | 1 +
hw/scsi/Makefile.objs | 15 -
hw/scsi/meson.build | 26 +
hw/scsi/trace.h | 1 +
hw/sd/Makefile.objs | 12 -
hw/sd/meson.build | 12 +
hw/sd/trace.h | 1 +
hw/semihosting/Makefile.objs | 2 -
hw/semihosting/meson.build | 4 +
hw/sh4/Makefile.objs | 4 -
hw/sh4/meson.build | 10 +
hw/smbios/Makefile.objs | 10 -
hw/smbios/meson.build | 13 +
hw/sparc/Makefile.objs | 3 -
hw/sparc/meson.build | 6 +
hw/sparc/trace.h | 1 +
hw/sparc64/Makefile.objs | 4 -
hw/sparc64/meson.build | 6 +
hw/sparc64/trace.h | 1 +
hw/ssi/Makefile.objs | 10 -
hw/ssi/meson.build | 9 +
hw/ssi/trace.h | 1 +
hw/timer/Makefile.objs | 41 -
hw/timer/meson.build | 37 +
hw/timer/trace.h | 1 +
hw/tpm/Makefile.objs | 6 -
hw/tpm/meson.build | 8 +
hw/tpm/trace.h | 1 +
hw/tricore/Makefile.objs | 1 -
hw/tricore/meson.build | 4 +
hw/unicore32/Makefile.objs | 4 -
hw/unicore32/meson.build | 5 +
hw/usb/Makefile.objs | 71 -
hw/usb/meson.build | 69 +
hw/usb/trace.h | 1 +
hw/vfio/Makefile.objs | 8 -
hw/vfio/meson.build | 18 +
hw/vfio/pci-quirks.c | 2 +-
hw/vfio/trace.h | 1 +
hw/virtio/Makefile.objs | 48 -
hw/virtio/meson.build | 51 +
hw/virtio/trace.h | 1 +
hw/virtio/virtio-mem.c | 2 +-
hw/watchdog/Makefile.objs | 7 -
hw/watchdog/meson.build | 7 +
hw/watchdog/trace.h | 1 +
hw/xen/Makefile.objs | 7 -
hw/xen/meson.build | 20 +
hw/xen/trace.h | 1 +
hw/xenpv/Makefile.objs | 2 -
hw/xenpv/meson.build | 3 +
hw/xtensa/Makefile.objs | 6 -
hw/xtensa/meson.build | 11 +
include/exec/cpu-all.h | 10 +-
include/exec/memory.h | 12 +-
.../exec/{memory_ldst.inc.h => memory_ldst.h.inc} | 0
..._ldst_cached.inc.h => memory_ldst_cached.h.inc} | 0
...mory_ldst_phys.inc.h => memory_ldst_phys.h.inc} | 0
include/qemu/osdep.h | 2 +-
include/tcg/tcg.h | 2 +-
include/user/syscall-trace.h | 2 +-
io/Makefile.objs | 12 -
io/meson.build | 25 +
io/trace.h | 1 +
job-qmp.c | 2 +-
job.c | 2 +-
libdecnumber/Makefile.objs | 5 -
libdecnumber/meson.build | 7 +
linux-user/Makefile.objs | 25 -
linux-user/alpha/Makefile.objs | 5 -
linux-user/alpha/meson.build | 5 +
linux-user/arm/Makefile.objs | 8 -
linux-user/arm/meson.build | 10 +
linux-user/arm/nwfpe/Makefile.objs | 2 -
linux-user/arm/nwfpe/meson.build | 10 +
linux-user/hppa/Makefile.objs | 5 -
linux-user/hppa/meson.build | 5 +
linux-user/i386/Makefile.objs | 5 -
linux-user/i386/meson.build | 5 +
linux-user/i386/syscall_nr.h | 1 +
linux-user/m68k/Makefile.objs | 5 -
linux-user/m68k/meson.build | 5 +
linux-user/meson.build | 37 +
linux-user/microblaze/Makefile.objs | 5 -
linux-user/microblaze/meson.build | 5 +
linux-user/mips/Makefile.objs | 5 -
linux-user/mips/meson.build | 5 +
linux-user/mips/syscall_nr.h | 1 +
linux-user/mips64/Makefile.objs | 12 -
linux-user/mips64/meson.build | 6 +
linux-user/mips64/syscall_nr.h | 7 +
linux-user/ppc/Makefile.objs | 6 -
linux-user/ppc/meson.build | 5 +
linux-user/s390x/Makefile.objs | 5 -
linux-user/s390x/meson.build | 5 +
linux-user/sh4/Makefile.objs | 5 -
linux-user/sh4/meson.build | 5 +
linux-user/sparc/Makefile.objs | 5 -
linux-user/sparc/meson.build | 5 +
linux-user/sparc64/Makefile.objs | 5 -
linux-user/sparc64/meson.build | 5 +
linux-user/trace.h | 1 +
linux-user/x86_64/Makefile.objs | 5 -
linux-user/x86_64/meson.build | 5 +
linux-user/x86_64/syscall_nr.h | 1 +
linux-user/xtensa/Makefile.objs | 5 -
linux-user/xtensa/meson.build | 5 +
memory_ldst.inc.c => memory_ldst.c.inc | 0
meson | 1 +
meson.build | 1447 ++++++++++++++++++++
meson_options.txt | 7 +
migration/Makefile.objs | 18 -
migration/meson.build | 40 +
migration/trace.h | 1 +
monitor/Makefile.objs | 6 -
monitor/meson.build | 9 +
monitor/trace.h | 1 +
nbd/Makefile.objs | 1 -
nbd/meson.build | 5 +
nbd/trace.h | 1 +
net/Makefile.objs | 32 -
net/can/Makefile.objs | 2 -
net/can/meson.build | 5 +
net/meson.build | 40 +
net/trace.h | 1 +
os-posix.c | 4 +-
pc-bios/descriptors/meson.build | 14 +
pc-bios/meson.build | 27 +
pc-bios/optionrom/Makefile | 67 +-
pc-bios/s390-ccw/Makefile | 18 +-
plugins/Makefile.objs | 21 -
plugins/meson.build | 13 +
po/LINGUAS | 8 +
po/Makefile | 52 -
po/POTFILES | 1 +
po/meson.build | 7 +
po/messages.po | 74 -
qapi/Makefile.objs | 38 -
qapi/meson.build | 125 ++
qapi/trace.h | 1 +
qga/Makefile.objs | 10 -
qga/installer/qemu-ga.wxs | 2 +-
qga/meson.build | 87 ++
qga/vss-win32/Makefile.objs | 23 -
qga/vss-win32/meson.build | 36 +
qobject/Makefile.objs | 3 -
qobject/meson.build | 3 +
qom/Makefile.objs | 5 -
qom/meson.build | 18 +
qom/trace.h | 1 +
replay/Makefile.objs | 10 -
replay/meson.build | 12 +
rules.mak | 314 +----
scripts/archive-source.sh | 3 +-
scripts/check_sparse.py | 25 +
scripts/clean-includes | 2 +-
scripts/create_config | 129 --
scripts/decodetree.py | 2 +-
scripts/device-crash-test | 2 +-
scripts/feature_to_c.sh | 24 +-
scripts/grepy.sh | 3 +
scripts/hxtool | 2 +-
scripts/minikconf.py | 0
scripts/mtest2make.py | 102 ++
scripts/ninjatool.py | 1002 ++++++++++++++
scripts/oss-fuzz/build.sh | 32 +-
scripts/qapi-gen.py | 0
scripts/qemu-version.sh | 25 +
scripts/tracetool.py | 0
scripts/tracetool/backend/dtrace.py | 2 +-
scripts/tracetool/backend/ust.py | 6 +-
scripts/tracetool/format/c.py | 5 +-
scripts/tracetool/format/tcg_h.py | 2 +-
scripts/tracetool/format/tcg_helper_c.py | 2 +-
scripts/undefsym.sh | 20 +
scsi/Makefile.objs | 4 -
scsi/meson.build | 4 +
scsi/trace.h | 1 +
softmmu/Makefile.objs | 14 -
softmmu/balloon.c | 2 +-
softmmu/ioport.c | 2 +-
softmmu/main.c | 1 +
softmmu/memory.c | 2 +-
softmmu/meson.build | 10 +
softmmu/qtest.c | 2 +-
softmmu/vl.c | 2 +-
storage-daemon/Makefile.objs | 1 -
storage-daemon/meson.build | 14 +
storage-daemon/qapi/Makefile.objs | 1 -
storage-daemon/qapi/meson.build | 7 +
.../qemu-storage-daemon.c | 0
stubs/Makefile.objs | 56 -
stubs/meson.build | 50 +
target/alpha/Makefile.objs | 4 -
target/alpha/meson.build | 18 +
target/arm/Makefile.objs | 89 --
target/arm/meson.build | 62 +
target/arm/trace.h | 1 +
.../{translate-neon.inc.c => translate-neon.c.inc} | 6 +-
target/arm/translate-sve.c | 2 +-
.../{translate-vfp.inc.c => translate-vfp.c.inc} | 4 +-
target/arm/translate.c | 12 +-
target/avr/Makefile.objs | 34 -
target/avr/disas.c | 2 +-
target/avr/meson.build | 20 +
target/avr/translate.c | 2 +-
target/cris/Makefile.objs | 3 -
target/cris/meson.build | 14 +
target/cris/translate.c | 2 +-
.../{translate_v10.inc.c => translate_v10.c.inc} | 0
target/hppa/Makefile.objs | 11 -
target/hppa/meson.build | 19 +
target/hppa/trace.h | 1 +
target/hppa/translate.c | 2 +-
target/i386/Makefile.objs | 23 -
target/i386/hvf/Makefile.objs | 2 -
target/i386/hvf/meson.build | 12 +
target/i386/meson.build | 40 +
target/i386/trace.h | 1 +
target/lm32/Makefile.objs | 4 -
target/lm32/meson.build | 15 +
target/m68k/Makefile.objs | 5 -
target/m68k/meson.build | 17 +
target/meson.build | 23 +
target/microblaze/Makefile.objs | 3 -
target/microblaze/meson.build | 14 +
target/mips/Makefile.objs | 6 -
target/mips/meson.build | 24 +
target/mips/trace.h | 1 +
target/mips/translate.c | 2 +-
.../{translate_init.inc.c => translate_init.c.inc} | 0
target/moxie/Makefile.objs | 2 -
target/moxie/meson.build | 14 +
target/nios2/Makefile.objs | 4 -
target/nios2/meson.build | 15 +
target/openrisc/Makefile.objs | 15 -
target/openrisc/disas.c | 2 +-
target/openrisc/meson.build | 23 +
target/openrisc/translate.c | 2 +-
target/ppc/Makefile.objs | 20 -
target/ppc/int_helper.c | 2 +-
target/ppc/meson.build | 37 +
.../ppc/{mfrom_table.inc.c => mfrom_table.c.inc} | 0
target/ppc/trace.h | 1 +
target/ppc/translate.c | 22 +-
.../translate/{dfp-impl.inc.c => dfp-impl.c.inc} | 0
.../ppc/translate/{dfp-ops.inc.c => dfp-ops.c.inc} | 0
.../ppc/translate/{fp-impl.inc.c => fp-impl.c.inc} | 0
.../ppc/translate/{fp-ops.inc.c => fp-ops.c.inc} | 0
.../translate/{spe-impl.inc.c => spe-impl.c.inc} | 0
.../ppc/translate/{spe-ops.inc.c => spe-ops.c.inc} | 0
.../translate/{vmx-impl.inc.c => vmx-impl.c.inc} | 0
.../ppc/translate/{vmx-ops.inc.c => vmx-ops.c.inc} | 0
.../translate/{vsx-impl.inc.c => vsx-impl.c.inc} | 0
.../ppc/translate/{vsx-ops.inc.c => vsx-ops.c.inc} | 0
.../{translate_init.inc.c => translate_init.c.inc} | 0
target/riscv/Makefile.objs | 28 -
...ans_privileged.inc.c => trans_privileged.c.inc} | 0
.../{trans_rva.inc.c => trans_rva.c.inc} | 0
.../{trans_rvd.inc.c => trans_rvd.c.inc} | 0
.../{trans_rvf.inc.c => trans_rvf.c.inc} | 0
.../{trans_rvh.inc.c => trans_rvh.c.inc} | 0
.../{trans_rvi.inc.c => trans_rvi.c.inc} | 0
.../{trans_rvm.inc.c => trans_rvm.c.inc} | 0
.../{trans_rvv.inc.c => trans_rvv.c.inc} | 0
target/riscv/meson.build | 34 +
target/riscv/trace.h | 1 +
target/riscv/translate.c | 20 +-
target/rx/Makefile.objs | 11 -
target/rx/disas.c | 2 +-
target/rx/meson.build | 16 +
target/rx/translate.c | 2 +-
target/s390x/Makefile.objs | 30 -
target/s390x/cpu_features.c | 2 +-
target/s390x/cpu_features.h | 2 +-
target/s390x/cpu_features_def.h | 2 +-
...u_features_def.inc.h => cpu_features_def.h.inc} | 0
target/s390x/cpu_models.h | 2 +-
target/s390x/meson.build | 62 +
target/s390x/trace.h | 1 +
target/s390x/translate.c | 2 +-
.../{translate_vx.inc.c => translate_vx.c.inc} | 0
target/sh4/Makefile.objs | 3 -
target/sh4/meson.build | 14 +
target/sparc/Makefile.objs | 7 -
target/sparc/meson.build | 23 +
target/sparc/trace.h | 1 +
target/tilegx/Makefile.objs | 1 -
target/tilegx/meson.build | 13 +
target/tricore/Makefile.objs | 1 -
target/tricore/meson.build | 15 +
target/unicore32/Makefile.objs | 8 -
target/unicore32/meson.build | 14 +
target/xtensa/Makefile.objs | 16 -
target/xtensa/core-dc232b.c | 4 +-
.../{gdb-config.inc.c => gdb-config.c.inc} | 0
.../{xtensa-modules.inc.c => xtensa-modules.c.inc} | 0
target/xtensa/core-dc233c.c | 4 +-
.../{gdb-config.inc.c => gdb-config.c.inc} | 0
.../{xtensa-modules.inc.c => xtensa-modules.c.inc} | 0
target/xtensa/core-de212.c | 4 +-
.../{gdb-config.inc.c => gdb-config.c.inc} | 0
.../{xtensa-modules.inc.c => xtensa-modules.c.inc} | 0
target/xtensa/core-fsf.c | 2 +-
.../{xtensa-modules.inc.c => xtensa-modules.c.inc} | 0
target/xtensa/core-sample_controller.c | 4 +-
.../{gdb-config.inc.c => gdb-config.c.inc} | 0
.../{xtensa-modules.inc.c => xtensa-modules.c.inc} | 0
target/xtensa/core-test_kc705_be.c | 4 +-
.../{gdb-config.inc.c => gdb-config.c.inc} | 0
.../{xtensa-modules.inc.c => xtensa-modules.c.inc} | 0
target/xtensa/core-test_mmuhifi_c3.c | 4 +-
.../{gdb-config.inc.c => gdb-config.c.inc} | 0
.../{xtensa-modules.inc.c => xtensa-modules.c.inc} | 0
target/xtensa/import_core.sh | 8 +-
target/xtensa/meson.build | 30 +
tcg/README | 2 +-
tcg/aarch64/{tcg-target.inc.c => tcg-target.c.inc} | 4 +-
tcg/arm/{tcg-target.inc.c => tcg-target.c.inc} | 4 +-
tcg/i386/{tcg-target.inc.c => tcg-target.c.inc} | 4 +-
tcg/mips/{tcg-target.inc.c => tcg-target.c.inc} | 2 +-
tcg/ppc/{tcg-target.inc.c => tcg-target.c.inc} | 4 +-
tcg/riscv/{tcg-target.inc.c => tcg-target.c.inc} | 4 +-
tcg/s390/{tcg-target.inc.c => tcg-target.c.inc} | 4 +-
tcg/sparc/{tcg-target.inc.c => tcg-target.c.inc} | 2 +-
tcg/{tcg-ldst.inc.c => tcg-ldst.c.inc} | 0
tcg/{tcg-pool.inc.c => tcg-pool.c.inc} | 2 +-
tcg/tcg.c | 6 +-
tcg/tci/README | 4 +-
tcg/tci/{tcg-target.inc.c => tcg-target.c.inc} | 0
tests/Makefile.include | 468 +------
tests/acceptance/avocado_qemu/__init__.py | 3 +-
tests/data/acpi/rebuild-expected-aml.sh | 2 +-
tests/docker/test-static | 24 +
tests/fp/Makefile | 600 --------
tests/fp/fp-test.c | 2 +-
tests/fp/meson.build | 636 +++++++++
tests/fp/{wrap.inc.c => wrap.c.inc} | 0
tests/meson.build | 18 +
tests/multiboot/run_test.sh | 2 +-
tests/plugin/Makefile | 46 -
tests/plugin/meson.build | 7 +
tests/qapi-schema/meson.build | 225 +++
tests/qemu-iotests/check | 6 +-
tests/qemu-iotests/meson.build | 10 +
tests/qtest/Makefile.include | 332 -----
tests/qtest/ac97-test.c | 2 +-
tests/qtest/acpi-utils.h | 2 +-
tests/qtest/ahci-test.c | 2 +-
tests/qtest/arm-cpu-features.c | 2 +-
tests/qtest/bios-tables-test.c | 2 +-
tests/qtest/boot-order-test.c | 2 +-
tests/qtest/boot-sector.c | 2 +-
tests/qtest/boot-sector.h | 2 +-
tests/qtest/boot-serial-test.c | 2 +-
tests/qtest/cdrom-test.c | 2 +-
tests/qtest/dbus-vmstate-test.c | 2 +-
tests/qtest/device-introspect-test.c | 2 +-
tests/qtest/device-plug-test.c | 2 +-
tests/qtest/drive_del-test.c | 2 +-
tests/qtest/ds1338-test.c | 2 +-
tests/qtest/e1000-test.c | 2 +-
tests/qtest/eepro100-test.c | 2 +-
tests/qtest/endianness-test.c | 2 +-
tests/qtest/es1370-test.c | 2 +-
tests/qtest/fuzz/Makefile.include | 39 -
tests/qtest/fuzz/fuzz.c | 2 +-
tests/qtest/fuzz/fuzz.h | 2 +-
tests/qtest/fuzz/i440fx_fuzz.c | 6 +-
tests/qtest/fuzz/meson.build | 35 +
tests/qtest/fuzz/qos_fuzz.c | 2 +-
tests/qtest/fuzz/qtest_wrappers.c | 2 +-
tests/qtest/fuzz/virtio_net_fuzz.c | 5 +-
tests/qtest/fuzz/virtio_scsi_fuzz.c | 8 +-
tests/qtest/fw_cfg-test.c | 2 +-
tests/qtest/hd-geo-test.c | 2 +-
tests/qtest/hexloader-test.c | 2 +-
tests/qtest/ide-test.c | 2 +-
tests/qtest/ipoctal232-test.c | 2 +-
tests/qtest/ivshmem-test.c | 2 +-
tests/qtest/libqos/aarch64-xlnx-zcu102-machine.c | 4 +-
tests/qtest/libqos/ahci.c | 6 +-
tests/qtest/libqos/ahci.h | 6 +-
tests/qtest/libqos/arm-imx25-pdk-machine.c | 6 +-
tests/qtest/libqos/arm-n800-machine.c | 6 +-
tests/qtest/libqos/arm-raspi2-machine.c | 4 +-
tests/qtest/libqos/arm-sabrelite-machine.c | 4 +-
tests/qtest/libqos/arm-smdkc210-machine.c | 4 +-
tests/qtest/libqos/arm-virt-machine.c | 6 +-
tests/qtest/libqos/arm-xilinx-zynq-a9-machine.c | 4 +-
tests/qtest/libqos/e1000e.c | 6 +-
tests/qtest/libqos/e1000e.h | 2 +-
tests/qtest/libqos/fw_cfg.c | 2 +-
tests/qtest/libqos/i2c-imx.c | 2 +-
tests/qtest/libqos/i2c-omap.c | 2 +-
tests/qtest/libqos/i2c.c | 2 +-
tests/qtest/libqos/i2c.h | 2 +-
tests/qtest/libqos/libqos-pc.c | 6 +-
tests/qtest/libqos/libqos-pc.h | 2 +-
tests/qtest/libqos/libqos-spapr.c | 6 +-
tests/qtest/libqos/libqos-spapr.h | 2 +-
tests/qtest/libqos/libqos.c | 4 +-
tests/qtest/libqos/libqos.h | 4 +-
tests/qtest/{ => libqos}/libqtest.h | 0
tests/qtest/libqos/malloc-pc.c | 4 +-
tests/qtest/libqos/malloc-pc.h | 2 +-
tests/qtest/libqos/malloc-spapr.c | 2 +-
tests/qtest/libqos/malloc-spapr.h | 2 +-
tests/qtest/libqos/malloc.c | 2 +-
tests/qtest/libqos/meson.build | 57 +
tests/qtest/libqos/pci-pc.c | 2 +-
tests/qtest/libqos/pci-pc.h | 6 +-
tests/qtest/libqos/pci-spapr.c | 6 +-
tests/qtest/libqos/pci-spapr.h | 6 +-
tests/qtest/libqos/pci.c | 4 +-
tests/qtest/libqos/pci.h | 2 +-
tests/qtest/libqos/ppc64_pseries-machine.c | 4 +-
tests/qtest/libqos/qgraph.c | 4 +-
tests/qtest/libqos/qgraph.h | 8 +-
tests/qtest/libqos/qgraph_internal.h | 4 +-
tests/qtest/libqos/qos_external.c | 8 +-
tests/qtest/libqos/qos_external.h | 4 +-
tests/qtest/libqos/rtas.c | 2 +-
tests/qtest/libqos/rtas.h | 2 +-
tests/qtest/libqos/sdhci.c | 2 +-
tests/qtest/libqos/sdhci.h | 2 +-
tests/qtest/libqos/tpci200.c | 4 +-
tests/qtest/libqos/usb.c | 2 +-
tests/qtest/libqos/usb.h | 2 +-
tests/qtest/libqos/virtio-9p.c | 4 +-
tests/qtest/libqos/virtio-9p.h | 6 +-
tests/qtest/libqos/virtio-balloon.c | 4 +-
tests/qtest/libqos/virtio-balloon.h | 6 +-
tests/qtest/libqos/virtio-blk.c | 4 +-
tests/qtest/libqos/virtio-blk.h | 6 +-
tests/qtest/libqos/virtio-mmio.c | 8 +-
tests/qtest/libqos/virtio-mmio.h | 4 +-
tests/qtest/libqos/virtio-net.c | 4 +-
tests/qtest/libqos/virtio-net.h | 6 +-
tests/qtest/libqos/virtio-pci.c | 14 +-
tests/qtest/libqos/virtio-pci.h | 6 +-
tests/qtest/libqos/virtio-rng.c | 4 +-
tests/qtest/libqos/virtio-rng.h | 6 +-
tests/qtest/libqos/virtio-scsi.c | 4 +-
tests/qtest/libqos/virtio-scsi.h | 6 +-
tests/qtest/libqos/virtio-serial.c | 4 +-
tests/qtest/libqos/virtio-serial.h | 6 +-
tests/qtest/libqos/virtio.c | 2 +-
tests/qtest/libqos/virtio.h | 2 +-
tests/qtest/libqos/x86_64_pc-machine.c | 2 +-
tests/qtest/libqtest-single.h | 2 +-
tests/qtest/libqtest.c | 2 +-
tests/qtest/m48t59-test.c | 2 +-
tests/qtest/machine-none-test.c | 2 +-
tests/qtest/megasas-test.c | 2 +-
tests/qtest/meson.build | 257 ++++
tests/qtest/microbit-test.c | 2 +-
tests/qtest/migration-helpers.h | 2 +-
tests/qtest/migration-test.c | 4 +-
tests/qtest/modules-test.c | 2 +-
tests/qtest/ne2000-test.c | 2 +-
tests/qtest/numa-test.c | 2 +-
tests/qtest/nvme-test.c | 2 +-
tests/qtest/pca9552-test.c | 2 +-
tests/qtest/pci-test.c | 2 +-
tests/qtest/pcnet-test.c | 2 +-
tests/qtest/pflash-cfi02-test.c | 2 +-
tests/qtest/pnv-xscom-test.c | 2 +-
tests/qtest/prom-env-test.c | 2 +-
tests/qtest/pvpanic-test.c | 2 +-
tests/qtest/pxe-test.c | 2 +-
tests/qtest/q35-test.c | 2 +-
tests/qtest/qmp-cmd-test.c | 2 +-
tests/qtest/qmp-test.c | 2 +-
tests/qtest/qom-test.c | 2 +-
tests/qtest/rtas-test.c | 4 +-
tests/qtest/sdhci-test.c | 2 +-
tests/qtest/spapr-phb-test.c | 2 +-
tests/qtest/tco-test.c | 2 +-
tests/qtest/test-filter-mirror.c | 2 +-
tests/qtest/test-filter-redirector.c | 2 +-
tests/qtest/test-hmp.c | 2 +-
tests/qtest/tpm-crb-swtpm-test.c | 2 +-
tests/qtest/tpm-tis-device-swtpm-test.c | 2 +-
tests/qtest/tpm-tis-swtpm-test.c | 2 +-
tests/qtest/tpm-util.c | 2 +-
tests/qtest/tulip-test.c | 2 +-
tests/qtest/virtio-rng-test.c | 2 +-
tests/qtest/virtio-test.c | 2 +-
tests/qtest/vmgenid-test.c | 2 +-
tests/qtest/vmxnet3-test.c | 2 +-
tests/qtest/wdt_ib700-test.c | 2 +-
tests/tcg/configure.sh | 4 +-
tests/test-qga.c | 10 +-
tests/test-qgraph.c | 5 +-
tests/vm/Makefile.include | 8 +-
tests/vm/freebsd | 2 +
tests/vm/netbsd | 2 +
tests/vm/openbsd | 2 +
tools/meson.build | 10 +
tools/virtiofsd/Makefile.objs | 12 -
tools/virtiofsd/meson.build | 19 +
tools/virtiofsd/passthrough_ll.c | 2 +-
.../virtiofsd/{seccomp.c => passthrough_seccomp.c} | 2 +-
.../virtiofsd/{seccomp.h => passthrough_seccomp.h} | 0
trace/Makefile.objs | 59 -
trace/control-target.c | 2 +-
trace/control.c | 2 +-
trace/meson.build | 93 ++
ui/Makefile.objs | 73 -
ui/input-keymap.c | 34 +-
ui/meson.build | 114 ++
ui/shader.c | 6 +-
ui/shader/meson.build | 15 +
ui/trace.h | 1 +
ui/vnc-enc-zrle.c | 22 +-
ui/{vnc-enc-zrle.inc.c => vnc-enc-zrle.c.inc} | 0
util/Makefile.objs | 83 --
util/meson.build | 78 ++
util/module.c | 1 -
util/trace.h | 1 +
version.texi.in | 2 +
764 files changed, 9136 insertions(+), 7623 deletions(-)
delete mode 100644 Makefile.target
delete mode 100644 accel/Makefile.objs
delete mode 100644 accel/kvm/Makefile.objs
create mode 100644 accel/kvm/meson.build
create mode 100644 accel/kvm/trace.h
create mode 100644 accel/meson.build
delete mode 100644 accel/stubs/Makefile.objs
create mode 100644 accel/stubs/meson.build
delete mode 100644 accel/tcg/Makefile.objs
rename accel/tcg/{atomic_common.inc.c => atomic_common.c.inc} (100%)
create mode 100644 accel/tcg/meson.build
create mode 100644 accel/tcg/trace.h
delete mode 100644 accel/xen/Makefile.objs
create mode 100644 accel/xen/meson.build
delete mode 100644 audio/Makefile.objs
create mode 100644 audio/meson.build
create mode 100644 audio/trace.h
delete mode 100644 authz/Makefile.objs
create mode 100644 authz/meson.build
create mode 100644 authz/trace.h
delete mode 100644 backends/Makefile.objs
create mode 100644 backends/meson.build
delete mode 100644 backends/tpm/Makefile.objs
create mode 100644 backends/tpm/meson.build
create mode 100644 backends/tpm/trace.h
create mode 100644 backends/trace.h
delete mode 100644 block/Makefile.objs
create mode 100644 block/meson.build
delete mode 100644 block/monitor/Makefile.objs
create mode 100644 block/monitor/meson.build
create mode 100644 block/trace.h
delete mode 100644 bsd-user/Makefile.objs
create mode 100644 bsd-user/meson.build
delete mode 100644 chardev/Makefile.objs
create mode 100644 chardev/meson.build
create mode 100644 chardev/trace.h
delete mode 100644 contrib/elf2dmp/Makefile.objs
create mode 100644 contrib/elf2dmp/meson.build
delete mode 100644 contrib/ivshmem-client/Makefile.objs
create mode 100644 contrib/ivshmem-client/meson.build
delete mode 100644 contrib/ivshmem-server/Makefile.objs
create mode 100644 contrib/ivshmem-server/meson.build
delete mode 100644 contrib/libvhost-user/Makefile.objs
create mode 100644 contrib/libvhost-user/meson.build
delete mode 100644 contrib/rdmacm-mux/Makefile.objs
create mode 100644 contrib/rdmacm-mux/meson.build
delete mode 100644 contrib/vhost-user-blk/Makefile.objs
create mode 100644 contrib/vhost-user-blk/meson.build
delete mode 100644 contrib/vhost-user-gpu/Makefile.objs
create mode 100644 contrib/vhost-user-gpu/meson.build
delete mode 100644 contrib/vhost-user-input/Makefile.objs
create mode 100644 contrib/vhost-user-input/meson.build
delete mode 100644 contrib/vhost-user-scsi/Makefile.objs
create mode 100644 contrib/vhost-user-scsi/meson.build
delete mode 100644 crypto/Makefile.objs
create mode 100644 crypto/meson.build
create mode 100644 crypto/trace.h
delete mode 100644 disas/Makefile.objs
delete mode 100644 disas/libvixl/Makefile.objs
create mode 100644 disas/libvixl/meson.build
create mode 100644 disas/meson.build
create mode 100644 docs/devel/build-system.rst
delete mode 100644 docs/devel/build-system.txt
create mode 100644 docs/meson.build
create mode 100644 docs/sphinx/depfile.py
delete mode 100644 dump/Makefile.objs
create mode 100644 dump/meson.build
rename fpu/{softfloat-specialize.inc.c => softfloat-specialize.c.inc} (100%)
delete mode 100644 fsdev/Makefile.objs
create mode 100644 fsdev/meson.build
delete mode 100644 hw/9pfs/Makefile.objs
create mode 100644 hw/9pfs/meson.build
create mode 100644 hw/9pfs/trace.h
delete mode 100644 hw/Makefile.objs
delete mode 100644 hw/acpi/Makefile.objs
create mode 100644 hw/acpi/meson.build
create mode 100644 hw/acpi/trace.h
delete mode 100644 hw/adc/Makefile.objs
create mode 100644 hw/adc/meson.build
delete mode 100644 hw/alpha/Makefile.objs
create mode 100644 hw/alpha/meson.build
create mode 100644 hw/alpha/trace.h
delete mode 100644 hw/arm/Makefile.objs
create mode 100644 hw/arm/meson.build
create mode 100644 hw/arm/trace.h
delete mode 100644 hw/audio/Makefile.objs
create mode 100644 hw/audio/meson.build
create mode 100644 hw/audio/trace.h
delete mode 100644 hw/avr/Makefile.objs
create mode 100644 hw/avr/meson.build
delete mode 100644 hw/block/Makefile.objs
delete mode 100644 hw/block/dataplane/Makefile.objs
create mode 100644 hw/block/dataplane/meson.build
create mode 100644 hw/block/dataplane/trace.h
create mode 100644 hw/block/meson.build
create mode 100644 hw/block/trace.h
delete mode 100644 hw/char/Makefile.objs
create mode 100644 hw/char/meson.build
create mode 100644 hw/char/trace.h
delete mode 100644 hw/core/Makefile.objs
create mode 100644 hw/core/meson.build
create mode 100644 hw/core/trace.h
delete mode 100644 hw/cpu/Makefile.objs
create mode 100644 hw/cpu/meson.build
delete mode 100644 hw/cris/Makefile.objs
create mode 100644 hw/cris/meson.build
delete mode 100644 hw/display/Makefile.objs
create mode 100644 hw/display/meson.build
create mode 100644 hw/display/trace.h
delete mode 100644 hw/dma/Makefile.objs
create mode 100644 hw/dma/meson.build
create mode 100644 hw/dma/trace.h
delete mode 100644 hw/gpio/Makefile.objs
create mode 100644 hw/gpio/meson.build
create mode 100644 hw/gpio/trace.h
delete mode 100644 hw/hppa/Makefile.objs
create mode 100644 hw/hppa/meson.build
create mode 100644 hw/hppa/trace.h
delete mode 100644 hw/hyperv/Makefile.objs
create mode 100644 hw/hyperv/meson.build
create mode 100644 hw/hyperv/trace.h
delete mode 100644 hw/i2c/Makefile.objs
create mode 100644 hw/i2c/meson.build
create mode 100644 hw/i2c/trace.h
delete mode 100644 hw/i386/Makefile.objs
delete mode 100644 hw/i386/kvm/Makefile.objs
create mode 100644 hw/i386/kvm/meson.build
create mode 100644 hw/i386/meson.build
create mode 100644 hw/i386/trace.h
delete mode 100644 hw/i386/xen/Makefile.objs
create mode 100644 hw/i386/xen/meson.build
create mode 100644 hw/i386/xen/trace.h
delete mode 100644 hw/ide/Makefile.objs
create mode 100644 hw/ide/meson.build
create mode 100644 hw/ide/trace.h
delete mode 100644 hw/input/Makefile.objs
create mode 100644 hw/input/meson.build
create mode 100644 hw/input/trace.h
delete mode 100644 hw/intc/Makefile.objs
create mode 100644 hw/intc/meson.build
create mode 100644 hw/intc/trace.h
delete mode 100644 hw/ipack/Makefile.objs
create mode 100644 hw/ipack/meson.build
delete mode 100644 hw/ipmi/Makefile.objs
create mode 100644 hw/ipmi/meson.build
delete mode 100644 hw/isa/Makefile.objs
create mode 100644 hw/isa/meson.build
create mode 100644 hw/isa/trace.h
delete mode 100644 hw/lm32/Makefile.objs
create mode 100644 hw/lm32/meson.build
delete mode 100644 hw/m68k/Makefile.objs
create mode 100644 hw/m68k/meson.build
delete mode 100644 hw/mem/Makefile.objs
create mode 100644 hw/mem/meson.build
create mode 100644 hw/mem/trace.h
create mode 100644 hw/meson.build
delete mode 100644 hw/microblaze/Makefile.objs
create mode 100644 hw/microblaze/meson.build
delete mode 100644 hw/mips/Makefile.objs
create mode 100644 hw/mips/meson.build
create mode 100644 hw/mips/trace.h
delete mode 100644 hw/misc/Makefile.objs
delete mode 100644 hw/misc/macio/Makefile.objs
create mode 100644 hw/misc/macio/meson.build
create mode 100644 hw/misc/macio/trace.h
create mode 100644 hw/misc/meson.build
create mode 100644 hw/misc/trace.h
delete mode 100644 hw/moxie/Makefile.objs
create mode 100644 hw/moxie/meson.build
delete mode 100644 hw/net/Makefile.objs
delete mode 100644 hw/net/can/Makefile.objs
create mode 100644 hw/net/can/meson.build
create mode 100644 hw/net/meson.build
create mode 100644 hw/net/trace.h
delete mode 100644 hw/nios2/Makefile.objs
create mode 100644 hw/nios2/meson.build
delete mode 100644 hw/nubus/Makefile.objs
create mode 100644 hw/nubus/meson.build
delete mode 100644 hw/nvram/Makefile.objs
create mode 100644 hw/nvram/meson.build
create mode 100644 hw/nvram/trace.h
delete mode 100644 hw/openrisc/Makefile.objs
create mode 100644 hw/openrisc/meson.build
delete mode 100644 hw/pci-bridge/Makefile.objs
create mode 100644 hw/pci-bridge/meson.build
delete mode 100644 hw/pci-host/Makefile.objs
create mode 100644 hw/pci-host/meson.build
create mode 100644 hw/pci-host/trace.h
delete mode 100644 hw/pci/Makefile.objs
create mode 100644 hw/pci/meson.build
create mode 100644 hw/pci/trace.h
delete mode 100644 hw/pcmcia/Makefile.objs
create mode 100644 hw/pcmcia/meson.build
delete mode 100644 hw/ppc/Makefile.objs
create mode 100644 hw/ppc/meson.build
create mode 100644 hw/ppc/trace.h
delete mode 100644 hw/rdma/Makefile.objs
create mode 100644 hw/rdma/meson.build
create mode 100644 hw/rdma/trace.h
create mode 100644 hw/rdma/vmw/trace.h
delete mode 100644 hw/riscv/Makefile.objs
create mode 100644 hw/riscv/meson.build
create mode 100644 hw/riscv/trace.h
delete mode 100644 hw/rtc/Makefile.objs
create mode 100644 hw/rtc/meson.build
create mode 100644 hw/rtc/trace.h
delete mode 100644 hw/rx/Makefile.objs
create mode 100644 hw/rx/meson.build
delete mode 100644 hw/s390x/Makefile.objs
create mode 100644 hw/s390x/meson.build
create mode 100644 hw/s390x/trace.h
delete mode 100644 hw/scsi/Makefile.objs
create mode 100644 hw/scsi/meson.build
create mode 100644 hw/scsi/trace.h
delete mode 100644 hw/sd/Makefile.objs
create mode 100644 hw/sd/meson.build
create mode 100644 hw/sd/trace.h
delete mode 100644 hw/semihosting/Makefile.objs
create mode 100644 hw/semihosting/meson.build
delete mode 100644 hw/sh4/Makefile.objs
create mode 100644 hw/sh4/meson.build
delete mode 100644 hw/smbios/Makefile.objs
create mode 100644 hw/smbios/meson.build
delete mode 100644 hw/sparc/Makefile.objs
create mode 100644 hw/sparc/meson.build
create mode 100644 hw/sparc/trace.h
delete mode 100644 hw/sparc64/Makefile.objs
create mode 100644 hw/sparc64/meson.build
create mode 100644 hw/sparc64/trace.h
delete mode 100644 hw/ssi/Makefile.objs
create mode 100644 hw/ssi/meson.build
create mode 100644 hw/ssi/trace.h
delete mode 100644 hw/timer/Makefile.objs
create mode 100644 hw/timer/meson.build
create mode 100644 hw/timer/trace.h
delete mode 100644 hw/tpm/Makefile.objs
create mode 100644 hw/tpm/meson.build
create mode 100644 hw/tpm/trace.h
delete mode 100644 hw/tricore/Makefile.objs
create mode 100644 hw/tricore/meson.build
delete mode 100644 hw/unicore32/Makefile.objs
create mode 100644 hw/unicore32/meson.build
delete mode 100644 hw/usb/Makefile.objs
create mode 100644 hw/usb/meson.build
create mode 100644 hw/usb/trace.h
delete mode 100644 hw/vfio/Makefile.objs
create mode 100644 hw/vfio/meson.build
create mode 100644 hw/vfio/trace.h
delete mode 100644 hw/virtio/Makefile.objs
create mode 100644 hw/virtio/meson.build
create mode 100644 hw/virtio/trace.h
delete mode 100644 hw/watchdog/Makefile.objs
create mode 100644 hw/watchdog/meson.build
create mode 100644 hw/watchdog/trace.h
delete mode 100644 hw/xen/Makefile.objs
create mode 100644 hw/xen/meson.build
create mode 100644 hw/xen/trace.h
delete mode 100644 hw/xenpv/Makefile.objs
create mode 100644 hw/xenpv/meson.build
delete mode 100644 hw/xtensa/Makefile.objs
create mode 100644 hw/xtensa/meson.build
rename include/exec/{memory_ldst.inc.h => memory_ldst.h.inc} (100%)
rename include/exec/{memory_ldst_cached.inc.h => memory_ldst_cached.h.inc} (100%)
rename include/exec/{memory_ldst_phys.inc.h => memory_ldst_phys.h.inc} (100%)
delete mode 100644 io/Makefile.objs
create mode 100644 io/meson.build
create mode 100644 io/trace.h
delete mode 100644 libdecnumber/Makefile.objs
create mode 100644 libdecnumber/meson.build
delete mode 100644 linux-user/Makefile.objs
delete mode 100644 linux-user/alpha/Makefile.objs
create mode 100644 linux-user/alpha/meson.build
delete mode 100644 linux-user/arm/Makefile.objs
create mode 100644 linux-user/arm/meson.build
delete mode 100644 linux-user/arm/nwfpe/Makefile.objs
create mode 100644 linux-user/arm/nwfpe/meson.build
delete mode 100644 linux-user/hppa/Makefile.objs
create mode 100644 linux-user/hppa/meson.build
delete mode 100644 linux-user/i386/Makefile.objs
create mode 100644 linux-user/i386/meson.build
create mode 100644 linux-user/i386/syscall_nr.h
delete mode 100644 linux-user/m68k/Makefile.objs
create mode 100644 linux-user/m68k/meson.build
create mode 100644 linux-user/meson.build
delete mode 100644 linux-user/microblaze/Makefile.objs
create mode 100644 linux-user/microblaze/meson.build
delete mode 100644 linux-user/mips/Makefile.objs
create mode 100644 linux-user/mips/meson.build
create mode 100644 linux-user/mips/syscall_nr.h
delete mode 100644 linux-user/mips64/Makefile.objs
create mode 100644 linux-user/mips64/meson.build
create mode 100644 linux-user/mips64/syscall_nr.h
delete mode 100644 linux-user/ppc/Makefile.objs
create mode 100644 linux-user/ppc/meson.build
delete mode 100644 linux-user/s390x/Makefile.objs
create mode 100644 linux-user/s390x/meson.build
delete mode 100644 linux-user/sh4/Makefile.objs
create mode 100644 linux-user/sh4/meson.build
delete mode 100644 linux-user/sparc/Makefile.objs
create mode 100644 linux-user/sparc/meson.build
delete mode 100644 linux-user/sparc64/Makefile.objs
create mode 100644 linux-user/sparc64/meson.build
create mode 100644 linux-user/trace.h
delete mode 100644 linux-user/x86_64/Makefile.objs
create mode 100644 linux-user/x86_64/meson.build
create mode 100644 linux-user/x86_64/syscall_nr.h
delete mode 100644 linux-user/xtensa/Makefile.objs
create mode 100644 linux-user/xtensa/meson.build
rename memory_ldst.inc.c => memory_ldst.c.inc (100%)
create mode 160000 meson
create mode 100644 meson.build
create mode 100644 meson_options.txt
delete mode 100644 migration/Makefile.objs
create mode 100644 migration/meson.build
create mode 100644 migration/trace.h
delete mode 100644 monitor/Makefile.objs
create mode 100644 monitor/meson.build
create mode 100644 monitor/trace.h
delete mode 100644 nbd/Makefile.objs
create mode 100644 nbd/meson.build
create mode 100644 nbd/trace.h
delete mode 100644 net/Makefile.objs
delete mode 100644 net/can/Makefile.objs
create mode 100644 net/can/meson.build
create mode 100644 net/meson.build
create mode 100644 net/trace.h
create mode 100644 pc-bios/descriptors/meson.build
create mode 100644 pc-bios/meson.build
delete mode 100644 plugins/Makefile.objs
create mode 100644 plugins/meson.build
create mode 100644 po/LINGUAS
delete mode 100644 po/Makefile
create mode 100644 po/POTFILES
create mode 100644 po/meson.build
delete mode 100644 po/messages.po
delete mode 100644 qapi/Makefile.objs
create mode 100644 qapi/meson.build
create mode 100644 qapi/trace.h
delete mode 100644 qga/Makefile.objs
create mode 100644 qga/meson.build
delete mode 100644 qga/vss-win32/Makefile.objs
create mode 100644 qga/vss-win32/meson.build
delete mode 100644 qobject/Makefile.objs
create mode 100644 qobject/meson.build
delete mode 100644 qom/Makefile.objs
create mode 100644 qom/meson.build
create mode 100644 qom/trace.h
delete mode 100644 replay/Makefile.objs
create mode 100644 replay/meson.build
create mode 100644 scripts/check_sparse.py
delete mode 100755 scripts/create_config
mode change 100755 => 100644 scripts/decodetree.py
create mode 100755 scripts/grepy.sh
mode change 100644 => 100755 scripts/hxtool
mode change 100755 => 100644 scripts/minikconf.py
create mode 100644 scripts/mtest2make.py
create mode 100755 scripts/ninjatool.py
mode change 100755 => 100644 scripts/qapi-gen.py
create mode 100755 scripts/qemu-version.sh
mode change 100755 => 100644 scripts/tracetool.py
create mode 100755 scripts/undefsym.sh
delete mode 100644 scsi/Makefile.objs
create mode 100644 scsi/meson.build
create mode 100644 scsi/trace.h
delete mode 100644 softmmu/Makefile.objs
create mode 100644 softmmu/meson.build
delete mode 100644 storage-daemon/Makefile.objs
create mode 100644 storage-daemon/meson.build
delete mode 100644 storage-daemon/qapi/Makefile.objs
create mode 100644 storage-daemon/qapi/meson.build
rename qemu-storage-daemon.c => storage-daemon/qemu-storage-daemon.c (100%)
delete mode 100644 stubs/Makefile.objs
create mode 100644 stubs/meson.build
delete mode 100644 target/alpha/Makefile.objs
create mode 100644 target/alpha/meson.build
delete mode 100644 target/arm/Makefile.objs
create mode 100644 target/arm/meson.build
create mode 100644 target/arm/trace.h
rename target/arm/{translate-neon.inc.c => translate-neon.c.inc} (99%)
rename target/arm/{translate-vfp.inc.c => translate-vfp.c.inc} (99%)
delete mode 100644 target/avr/Makefile.objs
create mode 100644 target/avr/meson.build
delete mode 100644 target/cris/Makefile.objs
create mode 100644 target/cris/meson.build
rename target/cris/{translate_v10.inc.c => translate_v10.c.inc} (100%)
delete mode 100644 target/hppa/Makefile.objs
create mode 100644 target/hppa/meson.build
create mode 100644 target/hppa/trace.h
delete mode 100644 target/i386/Makefile.objs
delete mode 100644 target/i386/hvf/Makefile.objs
create mode 100644 target/i386/hvf/meson.build
create mode 100644 target/i386/meson.build
create mode 100644 target/i386/trace.h
delete mode 100644 target/lm32/Makefile.objs
create mode 100644 target/lm32/meson.build
delete mode 100644 target/m68k/Makefile.objs
create mode 100644 target/m68k/meson.build
create mode 100644 target/meson.build
delete mode 100644 target/microblaze/Makefile.objs
create mode 100644 target/microblaze/meson.build
delete mode 100644 target/mips/Makefile.objs
create mode 100644 target/mips/meson.build
create mode 100644 target/mips/trace.h
rename target/mips/{translate_init.inc.c => translate_init.c.inc} (100%)
delete mode 100644 target/moxie/Makefile.objs
create mode 100644 target/moxie/meson.build
delete mode 100644 target/nios2/Makefile.objs
create mode 100644 target/nios2/meson.build
delete mode 100644 target/openrisc/Makefile.objs
create mode 100644 target/openrisc/meson.build
delete mode 100644 target/ppc/Makefile.objs
create mode 100644 target/ppc/meson.build
rename target/ppc/{mfrom_table.inc.c => mfrom_table.c.inc} (100%)
create mode 100644 target/ppc/trace.h
rename target/ppc/translate/{dfp-impl.inc.c => dfp-impl.c.inc} (100%)
rename target/ppc/translate/{dfp-ops.inc.c => dfp-ops.c.inc} (100%)
rename target/ppc/translate/{fp-impl.inc.c => fp-impl.c.inc} (100%)
rename target/ppc/translate/{fp-ops.inc.c => fp-ops.c.inc} (100%)
rename target/ppc/translate/{spe-impl.inc.c => spe-impl.c.inc} (100%)
rename target/ppc/translate/{spe-ops.inc.c => spe-ops.c.inc} (100%)
rename target/ppc/translate/{vmx-impl.inc.c => vmx-impl.c.inc} (100%)
rename target/ppc/translate/{vmx-ops.inc.c => vmx-ops.c.inc} (100%)
rename target/ppc/translate/{vsx-impl.inc.c => vsx-impl.c.inc} (100%)
rename target/ppc/translate/{vsx-ops.inc.c => vsx-ops.c.inc} (100%)
rename target/ppc/{translate_init.inc.c => translate_init.c.inc} (100%)
delete mode 100644 target/riscv/Makefile.objs
rename target/riscv/insn_trans/{trans_privileged.inc.c => trans_privileged.c.inc} (100%)
rename target/riscv/insn_trans/{trans_rva.inc.c => trans_rva.c.inc} (100%)
rename target/riscv/insn_trans/{trans_rvd.inc.c => trans_rvd.c.inc} (100%)
rename target/riscv/insn_trans/{trans_rvf.inc.c => trans_rvf.c.inc} (100%)
rename target/riscv/insn_trans/{trans_rvh.inc.c => trans_rvh.c.inc} (100%)
rename target/riscv/insn_trans/{trans_rvi.inc.c => trans_rvi.c.inc} (100%)
rename target/riscv/insn_trans/{trans_rvm.inc.c => trans_rvm.c.inc} (100%)
rename target/riscv/insn_trans/{trans_rvv.inc.c => trans_rvv.c.inc} (100%)
create mode 100644 target/riscv/meson.build
create mode 100644 target/riscv/trace.h
delete mode 100644 target/rx/Makefile.objs
create mode 100644 target/rx/meson.build
delete mode 100644 target/s390x/Makefile.objs
rename target/s390x/{cpu_features_def.inc.h => cpu_features_def.h.inc} (100%)
create mode 100644 target/s390x/meson.build
create mode 100644 target/s390x/trace.h
rename target/s390x/{translate_vx.inc.c => translate_vx.c.inc} (100%)
delete mode 100644 target/sh4/Makefile.objs
create mode 100644 target/sh4/meson.build
delete mode 100644 target/sparc/Makefile.objs
create mode 100644 target/sparc/meson.build
create mode 100644 target/sparc/trace.h
delete mode 100644 target/tilegx/Makefile.objs
create mode 100644 target/tilegx/meson.build
delete mode 100644 target/tricore/Makefile.objs
create mode 100644 target/tricore/meson.build
delete mode 100644 target/unicore32/Makefile.objs
create mode 100644 target/unicore32/meson.build
delete mode 100644 target/xtensa/Makefile.objs
rename target/xtensa/core-dc232b/{gdb-config.inc.c => gdb-config.c.inc} (100%)
rename target/xtensa/core-dc232b/{xtensa-modules.inc.c => xtensa-modules.c.inc} (100%)
rename target/xtensa/core-dc233c/{gdb-config.inc.c => gdb-config.c.inc} (100%)
rename target/xtensa/core-dc233c/{xtensa-modules.inc.c => xtensa-modules.c.inc} (100%)
rename target/xtensa/core-de212/{gdb-config.inc.c => gdb-config.c.inc} (100%)
rename target/xtensa/core-de212/{xtensa-modules.inc.c => xtensa-modules.c.inc} (100%)
rename target/xtensa/core-fsf/{xtensa-modules.inc.c => xtensa-modules.c.inc} (100%)
rename target/xtensa/core-sample_controller/{gdb-config.inc.c => gdb-config.c.inc} (100%)
rename target/xtensa/core-sample_controller/{xtensa-modules.inc.c => xtensa-modules.c.inc} (100%)
rename target/xtensa/core-test_kc705_be/{gdb-config.inc.c => gdb-config.c.inc} (100%)
rename target/xtensa/core-test_kc705_be/{xtensa-modules.inc.c => xtensa-modules.c.inc} (100%)
rename target/xtensa/core-test_mmuhifi_c3/{gdb-config.inc.c => gdb-config.c.inc} (100%)
rename target/xtensa/core-test_mmuhifi_c3/{xtensa-modules.inc.c => xtensa-modules.c.inc} (100%)
create mode 100644 target/xtensa/meson.build
rename tcg/aarch64/{tcg-target.inc.c => tcg-target.c.inc} (99%)
rename tcg/arm/{tcg-target.inc.c => tcg-target.c.inc} (99%)
rename tcg/i386/{tcg-target.inc.c => tcg-target.c.inc} (99%)
rename tcg/mips/{tcg-target.inc.c => tcg-target.c.inc} (99%)
rename tcg/ppc/{tcg-target.inc.c => tcg-target.c.inc} (99%)
rename tcg/riscv/{tcg-target.inc.c => tcg-target.c.inc} (99%)
rename tcg/s390/{tcg-target.inc.c => tcg-target.c.inc} (99%)
rename tcg/sparc/{tcg-target.inc.c => tcg-target.c.inc} (99%)
rename tcg/{tcg-ldst.inc.c => tcg-ldst.c.inc} (100%)
rename tcg/{tcg-pool.inc.c => tcg-pool.c.inc} (99%)
rename tcg/tci/{tcg-target.inc.c => tcg-target.c.inc} (100%)
create mode 100755 tests/docker/test-static
delete mode 100644 tests/fp/Makefile
create mode 100644 tests/fp/meson.build
rename tests/fp/{wrap.inc.c => wrap.c.inc} (100%)
create mode 100644 tests/meson.build
delete mode 100644 tests/plugin/Makefile
create mode 100644 tests/plugin/meson.build
create mode 100644 tests/qapi-schema/meson.build
create mode 100644 tests/qemu-iotests/meson.build
delete mode 100644 tests/qtest/Makefile.include
delete mode 100644 tests/qtest/fuzz/Makefile.include
create mode 100644 tests/qtest/fuzz/meson.build
rename tests/qtest/{ => libqos}/libqtest.h (100%)
create mode 100644 tests/qtest/libqos/meson.build
create mode 100644 tests/qtest/meson.build
create mode 100644 tools/meson.build
delete mode 100644 tools/virtiofsd/Makefile.objs
create mode 100644 tools/virtiofsd/meson.build
rename tools/virtiofsd/{seccomp.c => passthrough_seccomp.c} (99%)
rename tools/virtiofsd/{seccomp.h => passthrough_seccomp.h} (100%)
delete mode 100644 trace/Makefile.objs
create mode 100644 trace/meson.build
delete mode 100644 ui/Makefile.objs
create mode 100644 ui/meson.build
create mode 100644 ui/shader/meson.build
create mode 100644 ui/trace.h
rename ui/{vnc-enc-zrle.inc.c => vnc-enc-zrle.c.inc} (100%)
delete mode 100644 util/Makefile.objs
create mode 100644 util/meson.build
create mode 100644 util/trace.h
create mode 100644 version.texi.in
--
2.26.2
diff --git a/Makefile b/Makefile
index 6bbfacd5c4..8373ddccc9 100644
--- a/Makefile
+++ b/Makefile
@@ -49,24 +49,31 @@ endif
endif
export NINJA=./ninjatool
-Makefile.ninja: build.ninja ninjatool
- ./ninjatool -t ninja2make --omit clean dist uninstall < $< > $@
--include Makefile.ninja
-${ninja-targets-c_COMPILER} ${ninja-targets-cpp_COMPILER}: .var.command += -MP
-
-ninjatool: ninjatool.stamp
-ninjatool.stamp: $(SRC_PATH)/scripts/ninjatool.py config-host.mak
- $(MESON) setup --reconfigure . $(SRC_PATH) && touch $@
+# Running meson regenerates both build.ninja and ninjatool, and that is
+# enough to prime the rest of the build.
+ninjatool: build.ninja
+# Only needed in case Makefile.ninja does not exist.
.PHONY: ninja-clean ninja-distclean clean-ctlist
clean-ctlist:
ninja-clean::
ninja-distclean::
+build.ninja: config-host.mak
+
+Makefile.ninja: build.ninja ninjatool
+ ./ninjatool -t ninja2make --omit clean dist uninstall < $< > $@
+-include Makefile.ninja
+${ninja-targets-c_COMPILER} ${ninja-targets-cpp_COMPILER}: .var.command += -MP
+
+# If MESON is empty, the rule will be re-evaluated after Makefiles are
+# reread (and MESON won't be empty anymore).
+ifneq ($(MESON),)
Makefile.mtest: build.ninja scripts/mtest2make.py
$(MESON) introspect --tests | $(PYTHON) scripts/mtest2make.py > $@
-include Makefile.mtest
+endif
.git-submodule-status: git-submodule-update config-host.mak
@@ -87,11 +94,13 @@ CONFIG_ALL=y
-include config-all-devices.mak
-include config-all-disas.mak
-build.ninja: meson-private/coredata.dat
-meson-private/coredata.dat: config-host.mak
config-host.mak: $(SRC_PATH)/configure $(SRC_PATH)/pc-bios $(SRC_PATH)/VERSION
@echo $@ is out-of-date, running configure
- @./config.status --skip-meson
+ @if test -f meson-private/coredata.dat; then \
+ ./config.status --skip-meson; \
+ else \
+ ./config.status; \
+ fi
# Force configure to re-run if the API symbols are updated
ifeq ($(CONFIG_PLUGIN),y)
diff --git a/configure b/configure
index 1d7f0d07da..e9f9ec73b3 100755
--- a/configure
+++ b/configure
@@ -8179,17 +8179,10 @@ if test -n "$cross_prefix"; then
else
cross_arg="--native-file config-meson.cross"
fi
-
-if test -f config-meson.cross && ! cmp $cross config-meson.cross >/dev/null 2>&1; then
- rm -rf meson-private meson-info meson-logs
-fi
mv $cross config-meson.cross
-if test -d meson-private && ! test -f meson-private/coredata.dat; then
- rm -rf meson-private meson-info meson-logs
-fi
+rm -rf meson-private meson-info meson-logs
NINJA=$PWD/ninjatool $meson setup \
- $(if test -d meson-private/; then echo --reconfigure; fi) \
--prefix "${pre_prefix}$prefix" \
--libdir "${pre_prefix}$libdir" \
--libexecdir "${pre_prefix}$libexecdir" \
^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PULL v6 000/150] Meson-based build system
2020-08-19 14:35 [PULL v6 000/150] Meson-based build system Paolo Bonzini
@ 2020-08-19 18:12 ` Peter Maydell
2020-08-19 18:16 ` Peter Maydell
` (2 more replies)
0 siblings, 3 replies; 14+ messages in thread
From: Peter Maydell @ 2020-08-19 18:12 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: QEMU Developers
On Wed, 19 Aug 2020 at 15:36, Paolo Bonzini <pbonzini@redhat.com> wrote:
>
> The following changes since commit d0ed6a69d399ae193959225cdeaa9382746c91cc:
>
> Update version for v5.1.0 release (2020-08-11 17:07:03 +0100)
>
> are available in the Git repository at:
>
> https://gitlab.com/bonzini/qemu.git tags/for-upstream
>
> for you to fetch changes up to f5b5ef3b9f94d744f514f5469c97d3f80305111e:
>
> docs: convert build system documentation to rST (2020-08-19 10:01:48 -0400)
>
> v5->v6: improved incremental build
>
> ----------------------------------------------------------------
> New build system.
>
> Missing:
> * converting configure tests
> * converting unit tests
> * converting some remaining parts of the installation
Testing with what I think is the later commit 84264b99322
the all-linux-static build fails "make check":
ccache gcc -iquote
/home/petmay01/linaro/qemu-for-merges/build/all-linux-static -iquote
/home/petmay01/linaro/qemu-for
-merges/build/all-linux-static/tests -iquote tests -iquote
/home/petmay01/linaro/qemu-for-merges/tcg/i386 -isystem /ho
me/petmay01/linaro/qemu-for-merges/linux-headers
-I/home/petmay01/linaro/qemu-for-merges/build/all-linux-static/linux-
headers -iquote . -iquote /home/petmay01/linaro/qemu-for-merges
-iquote /home/petmay01/linaro/qemu-for-merges/accel/tc
g -iquote /home/petmay01/linaro/qemu-for-merges/include -iquote
/home/petmay01/linaro/qemu-for-merges/disas/libvixl -W
error -pthread -I/usr/include/glib-2.0
-I/usr/lib/x86_64-linux-gnu/glib-2.0/include -m64 -mcx16 -D_GNU_SOURCE
-D_FILE
_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes
-Wredundant-decls -Wundef -Wwrite-strings -Wmissing-prototypes
-fno-strict-aliasing -fno-common -fwrapv -Wold-style-declaration
-Wold-style-definition -Wtype-limits -Wformat-secur
ity -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body
-Wnested-externs -Wendif-labels -Wexpansion-to-defined
-Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi
-fstack-protector-strong -I/home/petmay01/linaro/qem
u-for-merges/capstone/include
-I/home/petmay01/linaro/qemu-for-merges/tests
-I/home/petmay01/linaro/qemu-for-merges/te
sts/qtest -MMD -MP -MT tests/check-qom-proplist.o -MF
tests/check-qom-proplist.d -g -std=gnu99 -Wall -c -o tests/chec
k-qom-proplist.o
/home/petmay01/linaro/qemu-for-merges/tests/check-qom-proplist.c
make: Leaving directory
'/home/petmay01/linaro/qemu-for-merges/build/all-linux-static'
make: *** No rule to make target 'check-block', needed by 'check'. Stop.
make: *** Waiting for unfinished jobs....
[various other output from other parallel jobs snipped]
This is from the build whose configure rune is
'--cc=ccache gcc' '--enable-debug' '--static' '--disable-system'
'--disable-gnutls'
Also one of my random "just test linux-user" setups fails
because the build doesn't seem to have put the final binaries
in the right place:
make: Entering directory '/home/petmay01/linaro/linux-user-test-0.3'
./qemu-linux-user.sh
[qemu-i386]
/home/petmay01/linaro/qemu-for-merges/build/all-linux-static/i386-linux-user/qemu-i386
-L ./gnemul/qemu-i386 i386/ls -l dummyfile
./qemu-linux-user.sh: 54: ./qemu-linux-user.sh:
/home/petmay01/linaro/qemu-for-merges/build/all-linux-static/i386-linux-user/qemu-i386:
not found
Makefile:6: recipe for target 'test' failed
make: *** [test] Error 127
make: Leaving directory '/home/petmay01/linaro/linux-user-test-0.3'
I can live with the .o files moving around (though I would have
preferred it if they did not), but the final binaries should be
being built into the same places we always have. Otherwise we're
going to break a lot of "just run from the build tree" setups
and instructions.
Everything else seems to have passed.
thanks
-- PMM
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PULL v6 000/150] Meson-based build system
2020-08-19 18:12 ` Peter Maydell
@ 2020-08-19 18:16 ` Peter Maydell
2020-08-19 19:05 ` Peter Maydell
2020-08-19 20:07 ` Philippe Mathieu-Daudé
2020-08-19 18:57 ` Michael Tokarev
2020-08-19 20:15 ` Paolo Bonzini
2 siblings, 2 replies; 14+ messages in thread
From: Peter Maydell @ 2020-08-19 18:16 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: QEMU Developers
On Wed, 19 Aug 2020 at 19:12, Peter Maydell <peter.maydell@linaro.org> wrote:
>
> On Wed, 19 Aug 2020 at 15:36, Paolo Bonzini <pbonzini@redhat.com> wrote:
> >
> > The following changes since commit d0ed6a69d399ae193959225cdeaa9382746c91cc:
> >
> > Update version for v5.1.0 release (2020-08-11 17:07:03 +0100)
> >
> > are available in the Git repository at:
> >
> > https://gitlab.com/bonzini/qemu.git tags/for-upstream
> >
> > for you to fetch changes up to f5b5ef3b9f94d744f514f5469c97d3f80305111e:
> >
> > docs: convert build system documentation to rST (2020-08-19 10:01:48 -0400)
> >
> > v5->v6: improved incremental build
> >
> > ----------------------------------------------------------------
> > New build system.
> >
> > Missing:
> > * converting configure tests
> > * converting unit tests
> > * converting some remaining parts of the installation
>
> Testing with what I think is the later commit 84264b99322
> Everything else seems to have passed.
Spoke too soon; "make --output-sync -C build/all-linux-static check-tcg"
failed with:
BUILD TCG tests for mips-linux-user
CHECK debian10
CHECK debian-mips-cross
BUILD mips-linux-user guest-tests with docker qemu/debian-mips-cross
RUN TCG tests for mips-linux-user
CHECK debian10
CHECK debian-mips-cross
BUILD mips-linux-user guest-tests with docker qemu/debian-mips-cross
RUN tests for mips
TEST threadcount on mips
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
timeout: the monitored command dumped core
Segmentation fault
../Makefile.target:153: recipe for target 'run-threadcount' failed
make[2]: *** [run-threadcount] Error 139
/home/petmay01/linaro/qemu-for-merges/tests/tcg/Makefile.qemu:76:
recipe for target 'run-guest-tests' failed
make[1]: *** [run-guest-tests] Error 2
/home/petmay01/linaro/qemu-for-merges/tests/Makefile.include:450:
recipe for target 'run-tcg-tests-mips-linux-user' failed
Which doesn't look on the face of it like it is a build system
issue, but on the other hand it's not one I've seen before with
the old build system...
thanks
-- PMM
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PULL v6 000/150] Meson-based build system
2020-08-19 18:12 ` Peter Maydell
2020-08-19 18:16 ` Peter Maydell
@ 2020-08-19 18:57 ` Michael Tokarev
2020-08-19 19:04 ` Peter Maydell
2020-08-19 20:15 ` Paolo Bonzini
2 siblings, 1 reply; 14+ messages in thread
From: Michael Tokarev @ 2020-08-19 18:57 UTC (permalink / raw)
To: Peter Maydell, Paolo Bonzini; +Cc: QEMU Developers
19.08.2020 21:12, Peter Maydell wrote:
...
> Also one of my random "just test linux-user" setups fails
> because the build doesn't seem to have put the final binaries
> in the right place:
...
> I can live with the .o files moving around (though I would have
> preferred it if they did not), but the final binaries should be
> being built into the same places we always have. Otherwise we're
> going to break a lot of "just run from the build tree" setups
> and instructions.
is it really that important? We've changed single target build
rules already (from subdir-x86_64-softmmu to x86_64-softmmu/all
for one), which broke quite some mostly automatic build
systems which needed some fixing. Moving executables isn't a
big deal after that, methinks..
/mjt
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PULL v6 000/150] Meson-based build system
2020-08-19 18:57 ` Michael Tokarev
@ 2020-08-19 19:04 ` Peter Maydell
2020-08-19 19:44 ` Paolo Bonzini
0 siblings, 1 reply; 14+ messages in thread
From: Peter Maydell @ 2020-08-19 19:04 UTC (permalink / raw)
To: Michael Tokarev; +Cc: Paolo Bonzini, QEMU Developers
On Wed, 19 Aug 2020 at 19:57, Michael Tokarev <mjt@tls.msk.ru> wrote:
>
> 19.08.2020 21:12, Peter Maydell wrote:
> ...
> > Also one of my random "just test linux-user" setups fails
> > because the build doesn't seem to have put the final binaries
> > in the right place:
> ...
> > I can live with the .o files moving around (though I would have
> > preferred it if they did not), but the final binaries should be
> > being built into the same places we always have. Otherwise we're
> > going to break a lot of "just run from the build tree" setups
> > and instructions.
>
> is it really that important? We've changed single target build
> rules already (from subdir-x86_64-softmmu to x86_64-softmmu/all
> for one), which broke quite some mostly automatic build
> systems which needed some fixing. Moving executables isn't a
> big deal after that, methinks..
It breaks my setups and also my muscle memory for where
executables live. So this is the limit of how much I'm
willing to allow Meson to mess us around, I think.
thanks
-- PMM
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PULL v6 000/150] Meson-based build system
2020-08-19 18:16 ` Peter Maydell
@ 2020-08-19 19:05 ` Peter Maydell
2020-08-19 19:31 ` Paolo Bonzini
2020-08-19 20:07 ` Philippe Mathieu-Daudé
1 sibling, 1 reply; 14+ messages in thread
From: Peter Maydell @ 2020-08-19 19:05 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: QEMU Developers
On Wed, 19 Aug 2020 at 19:16, Peter Maydell <peter.maydell@linaro.org> wrote:
> Spoke too soon; "make --output-sync -C build/all-linux-static check-tcg"
> failed with:
>
> BUILD TCG tests for mips-linux-user
> CHECK debian10
> CHECK debian-mips-cross
> BUILD mips-linux-user guest-tests with docker qemu/debian-mips-cross
> RUN TCG tests for mips-linux-user
> CHECK debian10
> CHECK debian-mips-cross
> BUILD mips-linux-user guest-tests with docker qemu/debian-mips-cross
> RUN tests for mips
> TEST threadcount on mips
> qemu: uncaught target signal 11 (Segmentation fault) - core dumped
> timeout: the monitored command dumped core
> Segmentation fault
> ../Makefile.target:153: recipe for target 'run-threadcount' failed
> make[2]: *** [run-threadcount] Error 139
> /home/petmay01/linaro/qemu-for-merges/tests/tcg/Makefile.qemu:76:
> recipe for target 'run-guest-tests' failed
> make[1]: *** [run-guest-tests] Error 2
> /home/petmay01/linaro/qemu-for-merges/tests/Makefile.include:450:
> recipe for target 'run-tcg-tests-mips-linux-user' failed
Seems to be consistent, so not an intermittent but presumably
an issue introduced by the meson changes.
-- PMM
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PULL v6 000/150] Meson-based build system
2020-08-19 19:05 ` Peter Maydell
@ 2020-08-19 19:31 ` Paolo Bonzini
0 siblings, 0 replies; 14+ messages in thread
From: Paolo Bonzini @ 2020-08-19 19:31 UTC (permalink / raw)
To: Peter Maydell; +Cc: QEMU Developers
[-- Attachment #1: Type: text/plain, Size: 1515 bytes --]
I can certainly add symlinks (that would be broken until make completes)
but moving the build outputs is not possible since there's no recursive
make anymore.
Paolo
Il mer 19 ago 2020, 21:06 Peter Maydell <peter.maydell@linaro.org> ha
scritto:
> On Wed, 19 Aug 2020 at 19:16, Peter Maydell <peter.maydell@linaro.org>
> wrote:
> > Spoke too soon; "make --output-sync -C build/all-linux-static check-tcg"
> > failed with:
> >
> > BUILD TCG tests for mips-linux-user
> > CHECK debian10
> > CHECK debian-mips-cross
> > BUILD mips-linux-user guest-tests with docker qemu/debian-mips-cross
> > RUN TCG tests for mips-linux-user
> > CHECK debian10
> > CHECK debian-mips-cross
> > BUILD mips-linux-user guest-tests with docker qemu/debian-mips-cross
> > RUN tests for mips
> > TEST threadcount on mips
> > qemu: uncaught target signal 11 (Segmentation fault) - core dumped
> > timeout: the monitored command dumped core
> > Segmentation fault
> > ../Makefile.target:153: recipe for target 'run-threadcount' failed
> > make[2]: *** [run-threadcount] Error 139
> > /home/petmay01/linaro/qemu-for-merges/tests/tcg/Makefile.qemu:76:
> > recipe for target 'run-guest-tests' failed
> > make[1]: *** [run-guest-tests] Error 2
> > /home/petmay01/linaro/qemu-for-merges/tests/Makefile.include:450:
> > recipe for target 'run-tcg-tests-mips-linux-user' failed
>
> Seems to be consistent, so not an intermittent but presumably
> an issue introduced by the meson changes.
>
> -- PMM
>
>
[-- Attachment #2: Type: text/html, Size: 2150 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PULL v6 000/150] Meson-based build system
2020-08-19 19:04 ` Peter Maydell
@ 2020-08-19 19:44 ` Paolo Bonzini
2020-08-19 21:11 ` Peter Maydell
0 siblings, 1 reply; 14+ messages in thread
From: Paolo Bonzini @ 2020-08-19 19:44 UTC (permalink / raw)
To: Peter Maydell, Michael Tokarev; +Cc: QEMU Developers
On 19/08/20 21:04, Peter Maydell wrote:
>> is it really that important? We've changed single target build
>> rules already (from subdir-x86_64-softmmu to x86_64-softmmu/all
>> for one), which broke quite some mostly automatic build
>> systems which needed some fixing. Moving executables isn't a
>> big deal after that, methinks..
> It breaks my setups and also my muscle memory for where
> executables live. So this is the limit of how much I'm
> willing to allow Meson to mess us around, I think.
It's totally possible to accomodate this and I appreciate the help and
effort you're putting into something that you (understandably) are not
too confident in.
However, this change was already in the first series that was posted
like a year ago...
Paolo
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PULL v6 000/150] Meson-based build system
2020-08-19 18:16 ` Peter Maydell
2020-08-19 19:05 ` Peter Maydell
@ 2020-08-19 20:07 ` Philippe Mathieu-Daudé
2020-08-19 22:27 ` Paolo Bonzini
1 sibling, 1 reply; 14+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-08-19 20:07 UTC (permalink / raw)
To: Peter Maydell, Paolo Bonzini; +Cc: QEMU Developers
On 8/19/20 8:16 PM, Peter Maydell wrote:
> On Wed, 19 Aug 2020 at 19:12, Peter Maydell <peter.maydell@linaro.org> wrote:
>>
>> On Wed, 19 Aug 2020 at 15:36, Paolo Bonzini <pbonzini@redhat.com> wrote:
>>>
>>> The following changes since commit d0ed6a69d399ae193959225cdeaa9382746c91cc:
>>>
>>> Update version for v5.1.0 release (2020-08-11 17:07:03 +0100)
>>>
>>> are available in the Git repository at:
>>>
>>> https://gitlab.com/bonzini/qemu.git tags/for-upstream
>>>
>>> for you to fetch changes up to f5b5ef3b9f94d744f514f5469c97d3f80305111e:
>>>
>>> docs: convert build system documentation to rST (2020-08-19 10:01:48 -0400)
>>>
>>> v5->v6: improved incremental build
>>>
>>> ----------------------------------------------------------------
>>> New build system.
>>>
>>> Missing:
>>> * converting configure tests
>>> * converting unit tests
>>> * converting some remaining parts of the installation
>>
>> Testing with what I think is the later commit 84264b99322
>
>> Everything else seems to have passed.
>
> Spoke too soon; "make --output-sync -C build/all-linux-static check-tcg"
> failed with:
>
> BUILD TCG tests for mips-linux-user
> CHECK debian10
> CHECK debian-mips-cross
> BUILD mips-linux-user guest-tests with docker qemu/debian-mips-cross
> RUN TCG tests for mips-linux-user
> CHECK debian10
> CHECK debian-mips-cross
> BUILD mips-linux-user guest-tests with docker qemu/debian-mips-cross
> RUN tests for mips
> TEST threadcount on mips
> qemu: uncaught target signal 11 (Segmentation fault) - core dumped
> timeout: the monitored command dumped core
> Segmentation fault
> ../Makefile.target:153: recipe for target 'run-threadcount' failed
> make[2]: *** [run-threadcount] Error 139
> /home/petmay01/linaro/qemu-for-merges/tests/tcg/Makefile.qemu:76:
> recipe for target 'run-guest-tests' failed
> make[1]: *** [run-guest-tests] Error 2
> /home/petmay01/linaro/qemu-for-merges/tests/Makefile.include:450:
> recipe for target 'run-tcg-tests-mips-linux-user' failed
>
> Which doesn't look on the face of it like it is a build system
> issue, but on the other hand it's not one I've seen before with
> the old build system...
>
Probably not the cause, but I'm seeing now docker images are built in
parallel (before it was sequential, I run make with -j8).
This seems to flood the DNS which blacklist me then I get failures:
#5 47.62 Error: Failed to download metadata for repo 'fedora-modular':
Cannot prepare internal mirrorlist: Curl error (6): Couldn't resolve
host name for
https://mirrors.fedoraproject.org/metalink?repo=fedora-modular-30&arch=x86_64
[Could not resolve host: mirrors.fedoraproject.org]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PULL v6 000/150] Meson-based build system
2020-08-19 18:12 ` Peter Maydell
2020-08-19 18:16 ` Peter Maydell
2020-08-19 18:57 ` Michael Tokarev
@ 2020-08-19 20:15 ` Paolo Bonzini
2 siblings, 0 replies; 14+ messages in thread
From: Paolo Bonzini @ 2020-08-19 20:15 UTC (permalink / raw)
To: Peter Maydell; +Cc: QEMU Developers
On 19/08/20 20:12, Peter Maydell wrote:
> make: *** No rule to make target 'check-block', needed by 'check'. Stop.
> make: *** Waiting for unfinished jobs....
> [various other output from other parallel jobs snipped]
That's because no tests are available with --disable-system, but I can
certainly add a no-op target for the sake of backwards compatibility.
Paolo
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PULL v6 000/150] Meson-based build system
2020-08-19 19:44 ` Paolo Bonzini
@ 2020-08-19 21:11 ` Peter Maydell
2020-08-19 23:20 ` Paolo Bonzini
0 siblings, 1 reply; 14+ messages in thread
From: Peter Maydell @ 2020-08-19 21:11 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: Michael Tokarev, QEMU Developers
On Wed, 19 Aug 2020 at 20:44, Paolo Bonzini <pbonzini@redhat.com> wrote:
> On 19/08/20 21:04, Peter Maydell wrote:
> >> is it really that important? We've changed single target build
> >> rules already (from subdir-x86_64-softmmu to x86_64-softmmu/all
> >> for one), which broke quite some mostly automatic build
> >> systems which needed some fixing. Moving executables isn't a
> >> big deal after that, methinks..
> > It breaks my setups and also my muscle memory for where
> > executables live. So this is the limit of how much I'm
> > willing to allow Meson to mess us around, I think.
>
> It's totally possible to accomodate this and I appreciate the help and
> effort you're putting into something that you (understandably) are not
> too confident in.
>
> However, this change was already in the first series that was posted
> like a year ago...
It's a hundred-and-fifty patch series, and I can't review everything.
I took it on trust that it would be basically a drop-in replacement
for our current makefile setup.
thanks
-- PMM
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PULL v6 000/150] Meson-based build system
2020-08-19 20:07 ` Philippe Mathieu-Daudé
@ 2020-08-19 22:27 ` Paolo Bonzini
0 siblings, 0 replies; 14+ messages in thread
From: Paolo Bonzini @ 2020-08-19 22:27 UTC (permalink / raw)
To: Philippe Mathieu-Daudé, Peter Maydell; +Cc: QEMU Developers
On 19/08/20 22:07, Philippe Mathieu-Daudé wrote:
> Probably not the cause, but I'm seeing now docker images are built in
> parallel (before it was sequential, I run make with -j8).
I think it's always been parallel, and in fact nothing at all is changed
by this series in that area.
In any case it's fixed by v7, it was a cut-and-paste error (the MIPS
invocations of syscallhdr.sh are different from the others).
Paolo
> This seems to flood the DNS which blacklist me then I get failures:
>
> #5 47.62 Error: Failed to download metadata for repo 'fedora-modular':
> Cannot prepare internal mirrorlist: Curl error (6): Couldn't resolve
> host name for
> https://mirrors.fedoraproject.org/metalink?repo=fedora-modular-30&arch=x86_64
> [Could not resolve host: mirrors.fedoraproject.org]
>
>
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PULL v6 000/150] Meson-based build system
2020-08-19 21:11 ` Peter Maydell
@ 2020-08-19 23:20 ` Paolo Bonzini
2020-08-20 8:51 ` Peter Maydell
0 siblings, 1 reply; 14+ messages in thread
From: Paolo Bonzini @ 2020-08-19 23:20 UTC (permalink / raw)
To: Peter Maydell; +Cc: Michael Tokarev, QEMU Developers
On 19/08/20 23:11, Peter Maydell wrote:
> On Wed, 19 Aug 2020 at 20:44, Paolo Bonzini <pbonzini@redhat.com> wrote:
>> However, this change was already in the first series that was posted
>> like a year ago...
>
> It's a hundred-and-fifty patch series, and I can't review everything.
> I took it on trust that it would be basically a drop-in replacement
> for our current makefile setup.
Everybody has a different bar for the kind of change they accept; some
people really would have liked to keep in-tree builds, others consider
it already a drop-in replacement if "./configure && make && make
install" works. Some consider building contrib/ tools by default a bad
idea, others consider it a necessity because of bitrot. My objective in
using Meson is, among other things, also to establish conventions and
make them easy to follow, and to set a standard for how much we want to
bend over in the interest of backwards compatibility.
I wasn't expecting a full review; wide testing is just as important, as
shown by the amount of papercuts that were hiding at a point where the
patches were already functional. That's why your input has been
invaluable with respect to both code coverage and usability
improvements. It will also result in better CI since we now know the
delta between e.g. GitLab + tests/docker + tests/vm and your battery of
builds (for example tests/tcg MIPS is not covered by GitLab CI!).
My complaint was only that, until last week nobody even tried to apply
and make the patches, and therefore some of the input I got surprised
me. I can guarantee that backwards-compatibility and incremental
adoption has been one of the design goals from the beginning (even
though it wasn't perfectly realized until y'all shaked it down). QEMU
is the only project _ever_ to switch to Meson without requiring a flag
day and with full support for old->new incremental builds, and that is
because I know how much you and many others in the community value all
that. At the same time, I had never considered the position of binaries
(especially when the new one is shorter :)).
But anyway, I don't want this minor complaint to detract from how
grateful I am for your and everybody else's shared effort. I have now
written down the list of changes introduced by the switch, at
https://wiki.qemu.org/Features/Meson/Next. I am confident that Meson
will win you over sooner rather than later!
Thanks,
Paolo
---
* automatically generate dependencies for sphinx manuals [Peter]
* fixes for ARM KVM build [Peter]
* work around old libiscsi in vhost-user-scsi.c [Peter]
* hack to support default c:/Program Files/QEMU prefix on mingw cross
compilation [Peter, Howard]
* added --enable-gettext/--disable-gettext [Peter]
* test for setuptools presence [Peter]
* fixes for Darwin [Peter, Roman]
* do not invoke system Meson through Python, always use embedded Meson
with --python [Roman]
* improvements and fixes to clean and distclean targets [Stefano]
* avoid (incorrect?) ubsan failure from CONFIG_BDRV_*_WHITELIST [Alexander]
* move --s390-pgste to Meson, removed QEMU_CFLAGS/QEMU_LDFLAGS for
config-target.mak
* remove some dead configure assignments
* update build system docs on how to add configure options, convert to rST
* moved installation of edk2 blobs and descriptors to Meson [Daniel]
* build and install elf2dmp on Windows too [Daniel]
* included headers renamed to .c.inc instead of .inc
* Simplified/rewrote handling of the modules variable [Howard]
* Fixed access to gdb-xml files [Howard]
* Fixed cross-compilation failure due to mingw prefix [Howard]
* Fixed sub-makefiles that include config-host.mak
* fixed error splat when doing "make" from unconfigured build directory
* use --native-file to list tools chosen by configure
* fixes for Windows (SDL, Wixl)
* C++ compiler not mandatory anymore
* remove useless .. search path for modules
* fix incremental build [Peter]
* work around sdl bug [Peter]
* fix w32 Ubuntu build [Peter]
* disable rdmacm-mux and vhost-user-blk build by default [Peter]
* allow cut-and-paste from config.status [Peter]
* support builds with nonworking C++ compiler [Peter]
* do not link gio into --disable-system builds [Peter]
* new patch to preserve compatibility symlinks from previous binary
locations [Peter]
* fixed cut-and-paste error in linux-user/mips/meson.build [Peter]
* preserve compatibility check-block target even if no block tests are
defined [Peter]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PULL v6 000/150] Meson-based build system
2020-08-19 23:20 ` Paolo Bonzini
@ 2020-08-20 8:51 ` Peter Maydell
0 siblings, 0 replies; 14+ messages in thread
From: Peter Maydell @ 2020-08-20 8:51 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: Michael Tokarev, QEMU Developers
On Thu, 20 Aug 2020 at 00:20, Paolo Bonzini <pbonzini@redhat.com> wrote:
> My complaint was only that, until last week nobody even tried to apply
> and make the patches, and therefore some of the input I got surprised
> me.
I think from my point of view I've been surprised because my
impression as somebody not following it closely was that the effort
apparently went very rapidly from "experimental effort" to
"this is ready to apply". Perhaps it caught others by surprise
in a similar way.
thanks
-- PMM
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2020-08-20 8:52 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-19 14:35 [PULL v6 000/150] Meson-based build system Paolo Bonzini
2020-08-19 18:12 ` Peter Maydell
2020-08-19 18:16 ` Peter Maydell
2020-08-19 19:05 ` Peter Maydell
2020-08-19 19:31 ` Paolo Bonzini
2020-08-19 20:07 ` Philippe Mathieu-Daudé
2020-08-19 22:27 ` Paolo Bonzini
2020-08-19 18:57 ` Michael Tokarev
2020-08-19 19:04 ` Peter Maydell
2020-08-19 19:44 ` Paolo Bonzini
2020-08-19 21:11 ` Peter Maydell
2020-08-19 23:20 ` Paolo Bonzini
2020-08-20 8:51 ` Peter Maydell
2020-08-19 20:15 ` Paolo Bonzini
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).