* [PULL v2 00/46] Next round of Meson bugfixes and cleanups @ 2020-09-07 16:44 Paolo Bonzini 2020-09-07 16:44 ` [PULL 37/46] meson: get opengl compilation flags from OPENGL_CFLAGS Paolo Bonzini ` (2 more replies) 0 siblings, 3 replies; 7+ messages in thread From: Paolo Bonzini @ 2020-09-07 16:44 UTC (permalink / raw) To: qemu-devel The following changes since commit 62f9256052df85194faa33137bbe0afb1c95b6e6: Merge remote-tracking branch 'remotes/kraxel/tags/vga-20200904-pull-request' into staging (2020-09-07 13:27:20 +0100) are available in the Git repository at: https://gitlab.com/bonzini/qemu.git tags/for-upstream for you to fetch changes up to cfdedc114244adf488242f547af899bc2fe9f3c0: meson: remove linkage of sdl to baum (2020-09-07 18:43:20 +0200) ---------------------------------------------------------------- meson related: * convert unit tests * bugfixes for mtest2make * miscellaneous bugfixes * dead code removal and configure cleanups * oss-fuzz fixes * msys fixes ---------------------------------------------------------------- Alexander Bulekov (3): oss-fuzz: fix rpath meson: specify fuzz linker script as a project arg fuzz: Add support for custom fuzzing library Bruce Rogers (1): meson: remove linkage of sdl to baum Marc-André Lureau (12): meson: build qapi tests library meson: declare tasn1 dependency meson: declare keyutils dependency meson: convert qht-bench meson: move keyutils dependency check meson: remove old socket_scm_helper rule meson: convert vhost-user-bridge meson: convert atomic*-bench tests: do not print benchmark output to stdout tests/migration/stress: remove unused exit_success meson: fix migration/stress compilation with glibc>=2.30 meson: convert migration/initrd-stress Paolo Bonzini (25): qemu-iotests: move check-block back to Makefiles mtest2make: split environment from test command mtest2make: split working directory from test command mtest2make: hide output of successful tests mtest2make: unify tests that appear in multiple suites meson: remove b_lundef option configure: do not include absolute paths in -I and -L paths configure: include cross sdl2-config in meson cross file ninjatool: use constant names for stamp files meson: fix libqos linking meson: convert the speed tests configure: remove dead code for in-tree builds meson: compute config_all_devices directly Makefile: remove dead variables and includes Makefile: inline the relevant parts of rules.mak configure: move disassembler configuration to meson meson: keep all compiler flags detection together configure: move -ldl test to meson configure: remove unnecessary libm test configure: do not look for install(1) meson: get glib compilation flags from GLIB_CFLAGS meson: get opengl compilation flags from OPENGL_CFLAGS configure: do not include dependency flags in QEMU_CFLAGS and LIBS configure: drop dead variables and functions docs: suggest Meson replacements for various configure functions Thomas Huth (2): tests/Makefile: test-image-locking needs CONFIG_POSIX meson: convert the unit tests Yonggang Luo (3): tests: handling signal on win32 properly configure: update dtc submodule meson: Convert undefsym.sh to undefsym.py .gitignore | 2 - Makefile | 63 +++--- Makefile.objs | 34 ---- accel/tcg/meson.build | 2 +- chardev/meson.build | 4 +- configure | 304 ++++------------------------ disas/meson.build | 4 +- docs/devel/build-system.rst | 18 +- hw/arm/meson.build | 2 +- hw/mips/meson.build | 2 +- hw/riscv/meson.build | 2 +- meson.build | 127 ++++++++---- monitor/meson.build | 2 +- rules.mak | 158 --------------- scripts/grepy.sh | 3 - scripts/mtest2make.py | 100 +++++----- scripts/ninjatool.py | 8 +- scripts/oss-fuzz/build.sh | 2 +- scripts/test-driver.py | 35 ++++ scripts/undefsym.py | 49 +++++ scripts/undefsym.sh | 20 -- tests/Makefile.include | 414 ++------------------------------------- tests/benchmark-crypto-cipher.c | 8 +- tests/benchmark-crypto-hash.c | 2 +- tests/benchmark-crypto-hmac.c | 8 +- tests/docker/Makefile.include | 4 + tests/include/meson.build | 16 ++ tests/meson.build | 255 ++++++++++++++++++++++++ tests/migration/initrd-stress.sh | 10 + tests/migration/meson.build | 14 ++ tests/migration/stress.c | 15 +- tests/qemu-iotests/meson.build | 4 - tests/qtest/fuzz/meson.build | 7 +- tests/qtest/libqos/meson.build | 9 +- tests/tcg/Makefile.qemu | 2 - tests/test-crypto-secret.c | 10 +- tests/test-qga.c | 2 +- tests/test-replication.c | 4 + ui/meson.build | 3 +- 39 files changed, 662 insertions(+), 1066 deletions(-) delete mode 100644 Makefile.objs delete mode 100644 rules.mak delete mode 100755 scripts/grepy.sh create mode 100644 scripts/test-driver.py create mode 100644 scripts/undefsym.py delete mode 100755 scripts/undefsym.sh create mode 100644 tests/include/meson.build create mode 100755 tests/migration/initrd-stress.sh create mode 100644 tests/migration/meson.build -- 2.26.2 ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PULL 37/46] meson: get opengl compilation flags from OPENGL_CFLAGS 2020-09-07 16:44 [PULL v2 00/46] Next round of Meson bugfixes and cleanups Paolo Bonzini @ 2020-09-07 16:44 ` Paolo Bonzini 2020-09-07 16:44 ` [PULL 38/46] configure: do not include dependency flags in QEMU_CFLAGS and LIBS Paolo Bonzini 2020-09-07 20:49 ` [PULL v2 00/46] Next round of Meson bugfixes and cleanups Peter Maydell 2 siblings, 0 replies; 7+ messages in thread From: Paolo Bonzini @ 2020-09-07 16:44 UTC (permalink / raw) To: qemu-devel 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> --- configure | 1 + meson.build | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/configure b/configure index d21fb1e733..e18f3e2156 100755 --- a/configure +++ b/configure @@ -7051,6 +7051,7 @@ fi if test "$opengl" = "yes" ; then echo "CONFIG_OPENGL=y" >> $config_host_mak + echo "OPENGL_CFLAGS=$opengl_cflags" >> $config_host_mak echo "OPENGL_LIBS=$opengl_libs" >> $config_host_mak if test "$opengl_dmabuf" = "yes" ; then echo "CONFIG_OPENGL_DMABUF=y" >> $config_host_mak diff --git a/meson.build b/meson.build index eda2dc8b9e..6a0a645a9c 100644 --- a/meson.build +++ b/meson.build @@ -302,7 +302,8 @@ if 'CONFIG_AUDIO_COREAUDIO' in config_host endif opengl = not_found if 'CONFIG_OPENGL' in config_host - opengl = declare_dependency(link_args: config_host['OPENGL_LIBS'].split()) + opengl = declare_dependency(compile_args: config_host['OPENGL_CFLAGS'].split(), + link_args: config_host['OPENGL_LIBS'].split()) else endif gtk = not_found -- 2.26.2 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PULL 38/46] configure: do not include dependency flags in QEMU_CFLAGS and LIBS 2020-09-07 16:44 [PULL v2 00/46] Next round of Meson bugfixes and cleanups Paolo Bonzini 2020-09-07 16:44 ` [PULL 37/46] meson: get opengl compilation flags from OPENGL_CFLAGS Paolo Bonzini @ 2020-09-07 16:44 ` Paolo Bonzini 2020-09-07 20:49 ` [PULL v2 00/46] Next round of Meson bugfixes and cleanups Peter Maydell 2 siblings, 0 replies; 7+ messages in thread From: Paolo Bonzini @ 2020-09-07 16:44 UTC (permalink / raw) To: qemu-devel 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> --- Makefile | 2 +- configure | 40 ---------------------------------------- hw/arm/meson.build | 2 +- hw/mips/meson.build | 2 +- hw/riscv/meson.build | 2 +- monitor/meson.build | 2 +- ui/meson.build | 3 ++- 7 files changed, 7 insertions(+), 46 deletions(-) diff --git a/Makefile b/Makefile index 678e76d6f2..d6c5c9fdef 100644 --- a/Makefile +++ b/Makefile @@ -155,7 +155,7 @@ dtc/%: .git-submodule-status # Therefore we replicate some of the logic in the sub-makefile. # Remove all the extra -Warning flags that QEMU uses that Capstone doesn't; # no need to annoy QEMU developers with such things. -CAP_CFLAGS = $(patsubst -W%,,$(CFLAGS) $(QEMU_CFLAGS)) +CAP_CFLAGS = $(patsubst -W%,,$(CFLAGS) $(QEMU_CFLAGS)) $(CAPSTONE_CFLAGS) CAP_CFLAGS += -DCAPSTONE_USE_SYS_DYN_MEM CAP_CFLAGS += -DCAPSTONE_HAS_ARM CAP_CFLAGS += -DCAPSTONE_HAS_ARM64 diff --git a/configure b/configure index e18f3e2156..b94ba9b239 100755 --- a/configure +++ b/configure @@ -832,7 +832,6 @@ FreeBSD) audio_drv_list="oss try-sdl" audio_possible_drivers="oss sdl pa" # needed for kinfo_getvmmap(3) in libutil.h - LIBS="-lutil $LIBS" netmap="" # enable netmap autodetect HOST_VARIANT_DIR="freebsd" ;; @@ -890,13 +889,10 @@ SunOS) QEMU_CFLAGS="-D_XOPEN_SOURCE=600 $QEMU_CFLAGS" # needed for TIOCWIN* defines in termios.h QEMU_CFLAGS="-D__EXTENSIONS__ $QEMU_CFLAGS" - solarisnetlibs="-lsocket -lnsl -lresolv" - LIBS="$solarisnetlibs $LIBS" ;; Haiku) haiku="yes" QEMU_CFLAGS="-DB_USE_POSITIVE_POSIX_ERRORS -DBSD_SOURCE $QEMU_CFLAGS" - LIBS="-lposix_error_mapper -lnetwork -lbsd $LIBS" ;; Linux) audio_drv_list="try-pa oss" @@ -966,11 +962,7 @@ if test "$mingw32" = "yes" ; then HOST_DSOSUF=".dll" # MinGW needs -mthreads for TLS and macro _MT. CFLAGS="-mthreads $CFLAGS" - LIBS="-lwinmm -lws2_32 $LIBS" write_c_skeleton; - if compile_prog "" "-liberty" ; then - LIBS="-liberty $LIBS" - fi prefix="c:/Program Files/QEMU" qemu_suffix="" libs_qga="-lws2_32 -lwinmm -lpowrprof -lwtsapi32 -lwininet -liphlpapi -lnetapi32 $libs_qga" @@ -2691,7 +2683,6 @@ if test "$xen" != "no" ; then if $pkg_config --exists xentoolcore; then xen_pc="$xen_pc xentoolcore" fi - QEMU_CFLAGS="$QEMU_CFLAGS $($pkg_config --cflags $xen_pc)" xen_cflags="$($pkg_config --cflags $xen_pc)" xen_libs="$($pkg_config --libs $xen_pc)" else @@ -3076,8 +3067,6 @@ if test "$gnutls" != "no"; then # At least ubuntu 18.04 ships only shared libraries. write_c_skeleton if compile_prog "" "$gnutls_libs" ; then - LIBS="$gnutls_libs $LIBS" - QEMU_CFLAGS="$QEMU_CFLAGS $gnutls_cflags" pass="yes" fi fi @@ -3147,8 +3136,6 @@ if test "$nettle" != "no"; then # Link test to make sure the given libraries work (e.g for static). write_c_skeleton if compile_prog "" "$nettle_libs" ; then - LIBS="$nettle_libs $LIBS" - QEMU_CFLAGS="$QEMU_CFLAGS $nettle_cflags" if test -z "$gcrypt"; then gcrypt="no" fi @@ -3191,8 +3178,6 @@ if test "$gcrypt" != "no"; then # Link test to make sure the given libraries work (e.g for static). write_c_skeleton if compile_prog "" "$gcrypt_libs" ; then - LIBS="$gcrypt_libs $LIBS" - QEMU_CFLAGS="$QEMU_CFLAGS $gcrypt_cflags" pass="yes" fi fi @@ -3764,7 +3749,6 @@ for i in $glib_modules; do if $pkg_config --atleast-version=$glib_req_ver $i; then glib_cflags=$($pkg_config --cflags $i) glib_libs=$($pkg_config --libs $i) - LIBS="$glib_libs $LIBS" else error_exit "glib-$glib_req_ver $i is required to compile QEMU" fi @@ -4074,11 +4058,6 @@ if test "$linux_io_uring" != "no" ; then linux_io_uring_cflags=$($pkg_config --cflags liburing) linux_io_uring_libs=$($pkg_config --libs liburing) linux_io_uring=yes - - # io_uring is used in libqemuutil.a where per-file -libs variables are not - # seen by programs linking the archive. It's not ideal, but just add the - # library dependency globally. - LIBS="$linux_io_uring_libs $LIBS" else if test "$linux_io_uring" = "yes" ; then feature_not_found "linux io_uring" "Install liburing devel" @@ -4123,7 +4102,6 @@ EOF elif compile_prog "-DCONFIG_LIBATTR" "-lattr" ; then attr=yes libattr_libs="-lattr" - LIBS="$libattr_libs $LIBS" libattr=yes else if test "$attr" = "yes" ; then @@ -4243,7 +4221,6 @@ if test "$opengl" != "no" ; then if test "$gtk" = "yes" && $pkg_config --exists "$gtkpackage >= 3.16"; then gtk_gl="yes" fi - QEMU_CFLAGS="$QEMU_CFLAGS $opengl_cflags" else if test "$opengl" = "yes" ; then feature_not_found "opengl" "Please install opengl (mesa) devel pkgs: $opengl_pkgs" @@ -4998,7 +4975,6 @@ EOF $pkg_config --atleast-version=0.12.3 spice-protocol && \ compile_prog "$spice_cflags" "$spice_libs" ; then spice="yes" - QEMU_CFLAGS="$QEMU_CFLAGS $spice_cflags" else if test "$spice" = "yes" ; then feature_not_found "spice" \ @@ -5181,7 +5157,6 @@ case "$capstone" in git_submodules="${git_submodules} capstone" fi mkdir -p capstone - QEMU_CFLAGS="$QEMU_CFLAGS -I${source_path}/capstone/include" if test "$mingw32" = "yes"; then LIBCAPSTONE=capstone.lib else @@ -5194,7 +5169,6 @@ case "$capstone" in system) capstone_libs="$($pkg_config --libs capstone)" capstone_cflags="$($pkg_config --cflags capstone)" - QEMU_CFLAGS="$QEMU_CFLAGS $($pkg_config --cflags capstone)" ;; no) @@ -5343,8 +5317,6 @@ EOF else urcu_bp_libs="-lurcu-bp" fi - - LIBS="$lttng_ust_libs $urcu_bp_libs $LIBS" else error_exit "Trace backend 'ust' missing lttng-ust header files" fi @@ -6125,7 +6097,6 @@ if test "$libpmem" != "no"; then libpmem="yes" libpmem_libs=$($pkg_config --libs libpmem) libpmem_cflags=$($pkg_config --cflags libpmem) - QEMU_CFLAGS="$QEMU_CFLAGS $libpmem_cflags" else if test "$libpmem" = "yes" ; then feature_not_found "libpmem" "Install nvml or pmdk" @@ -6142,7 +6113,6 @@ if test "$libdaxctl" != "no"; then libdaxctl="yes" libdaxctl_libs=$($pkg_config --libs libdaxctl) libdaxctl_cflags=$($pkg_config --cflags libdaxctl) - QEMU_CFLAGS="$QEMU_CFLAGS $libdaxctl_cflags" else if test "$libdaxctl" = "yes" ; then feature_not_found "libdaxctl" "Install libdaxctl" @@ -6325,11 +6295,6 @@ if test "$libudev" != "no" ; then fi fi -# Now we've finished running tests it's OK to add -Werror to the compiler flags -if test "$werror" = "yes"; then - QEMU_CFLAGS="-Werror $QEMU_CFLAGS" -fi - # Exclude --warn-common with TSan to suppress warnings from the TSan libraries. if test "$solaris" = "no" && test "$tsan" = "no"; then if $ld --version 2>/dev/null | grep "GNU ld" >/dev/null 2>/dev/null ; then @@ -6546,10 +6511,6 @@ echo_version() { fi } -# prepend ftd flags after all config tests are done -QEMU_CFLAGS="$fdt_cflags $QEMU_CFLAGS" -QEMU_LDFLAGS="$fdt_ldflags $QEMU_LDFLAGS" - config_host_mak="config-host.mak" echo "# Automatically generated by configure - do not modify" > $config_host_mak @@ -7482,7 +7443,6 @@ echo "QEMU_LDFLAGS=$QEMU_LDFLAGS" >> $config_host_mak echo "LDFLAGS_NOPIE=$LDFLAGS_NOPIE" >> $config_host_mak echo "LD_REL_FLAGS=$LD_REL_FLAGS" >> $config_host_mak echo "LD_I386_EMULATION=$ld_i386_emulation" >> $config_host_mak -echo "LIBS+=$LIBS" >> $config_host_mak echo "LIBS_TOOLS+=$libs_tools" >> $config_host_mak echo "PTHREAD_LIB=$PTHREAD_LIB" >> $config_host_mak echo "EXESUF=$EXESUF" >> $config_host_mak diff --git a/hw/arm/meson.build b/hw/arm/meson.build index 1ae5e17eeb..8480b7f37d 100644 --- a/hw/arm/meson.build +++ b/hw/arm/meson.build @@ -1,5 +1,5 @@ arm_ss = ss.source_set() -arm_ss.add(files('boot.c')) +arm_ss.add(files('boot.c'), fdt) arm_ss.add(when: 'CONFIG_PLATFORM_BUS', if_true: files('sysbus-fdt.c')) arm_ss.add(when: 'CONFIG_ARM_VIRT', if_true: files('virt.c')) arm_ss.add(when: 'CONFIG_ACPI', if_true: files('virt-acpi-build.c')) diff --git a/hw/mips/meson.build b/hw/mips/meson.build index 6ac9dc4cff..46294b7382 100644 --- a/hw/mips/meson.build +++ b/hw/mips/meson.build @@ -4,7 +4,7 @@ mips_ss.add(when: 'CONFIG_FULOONG', if_true: files('fuloong2e.c')) mips_ss.add(when: 'CONFIG_JAZZ', if_true: files('jazz.c')) mips_ss.add(when: 'CONFIG_MALTA', if_true: files('gt64xxx_pci.c', 'malta.c')) mips_ss.add(when: 'CONFIG_MIPSSIM', if_true: files('mipssim.c')) -mips_ss.add(when: 'CONFIG_MIPS_BOSTON', if_true: files('boston.c')) +mips_ss.add(when: 'CONFIG_MIPS_BOSTON', if_true: [files('boston.c'), fdt]) mips_ss.add(when: 'CONFIG_MIPS_CPS', if_true: files('cps.c')) mips_ss.add(when: 'CONFIG_R4K', if_true: files('r4k.c')) diff --git a/hw/riscv/meson.build b/hw/riscv/meson.build index 25af9db75e..fe2ea75f65 100644 --- a/hw/riscv/meson.build +++ b/hw/riscv/meson.build @@ -1,5 +1,5 @@ riscv_ss = ss.source_set() -riscv_ss.add(files('boot.c')) +riscv_ss.add(files('boot.c'), fdt) riscv_ss.add(files('numa.c')) riscv_ss.add(when: 'CONFIG_HART', if_true: files('riscv_hart.c')) riscv_ss.add(when: 'CONFIG_OPENTITAN', if_true: files('opentitan.c')) diff --git a/monitor/meson.build b/monitor/meson.build index 0484a64341..eb2a534fdc 100644 --- a/monitor/meson.build +++ b/monitor/meson.build @@ -6,4 +6,4 @@ softmmu_ss.add(files( 'qmp-cmds.c', )) -specific_ss.add(when: 'CONFIG_SOFTMMU', if_true: files('misc.c')) +specific_ss.add(when: 'CONFIG_SOFTMMU', if_true: [files('misc.c'), spice]) diff --git a/ui/meson.build b/ui/meson.build index 82f60756d9..dd6c110136 100644 --- a/ui/meson.build +++ b/ui/meson.build @@ -1,5 +1,5 @@ softmmu_ss.add(pixman) -specific_ss.add(pixman) # for the include path +specific_ss.add(when: ['CONFIG_SOFTMMU'], if_true: pixman) # for the include path softmmu_ss.add(files( 'console.c', @@ -35,6 +35,7 @@ softmmu_ss.add_all(when: vnc, if_true: vnc_ss) softmmu_ss.add(when: vnc, if_false: files('vnc-stubs.c')) softmmu_ss.add(when: [opengl, 'CONFIG_OPENGL'], if_true: files('shader.c', 'console-gl.c', 'egl-helpers.c', 'egl-context.c')) softmmu_ss.add(when: [opengl, 'CONFIG_OPENGL_DMABUF'], if_true: files('egl-headless.c')) +specific_ss.add(when: ['CONFIG_SOFTMMU'], if_true: opengl) ui_modules = {} -- 2.26.2 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PULL v2 00/46] Next round of Meson bugfixes and cleanups 2020-09-07 16:44 [PULL v2 00/46] Next round of Meson bugfixes and cleanups Paolo Bonzini 2020-09-07 16:44 ` [PULL 37/46] meson: get opengl compilation flags from OPENGL_CFLAGS Paolo Bonzini 2020-09-07 16:44 ` [PULL 38/46] configure: do not include dependency flags in QEMU_CFLAGS and LIBS Paolo Bonzini @ 2020-09-07 20:49 ` Peter Maydell 2 siblings, 0 replies; 7+ messages in thread From: Peter Maydell @ 2020-09-07 20:49 UTC (permalink / raw) To: Paolo Bonzini; +Cc: QEMU Developers On Mon, 7 Sep 2020 at 17:45, Paolo Bonzini <pbonzini@redhat.com> wrote: > > The following changes since commit 62f9256052df85194faa33137bbe0afb1c95b6e6: > > Merge remote-tracking branch 'remotes/kraxel/tags/vga-20200904-pull-request' into staging (2020-09-07 13:27:20 +0100) > > are available in the Git repository at: > > https://gitlab.com/bonzini/qemu.git tags/for-upstream > > for you to fetch changes up to cfdedc114244adf488242f547af899bc2fe9f3c0: > > meson: remove linkage of sdl to baum (2020-09-07 18:43:20 +0200) > > ---------------------------------------------------------------- > meson related: > * convert unit tests > * bugfixes for mtest2make > * miscellaneous bugfixes > * dead code removal and configure cleanups > * oss-fuzz fixes > * msys fixes Conflict in tests/Makefile.include, resolution not immediately obvious -- could you rebase and resend, please? thanks -- PMM ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PULL v2 00/46] Next round of Meson bugfixes and cleanups @ 2020-09-06 17:53 Paolo Bonzini 2020-09-06 18:34 ` Peter Maydell 0 siblings, 1 reply; 7+ messages in thread From: Paolo Bonzini @ 2020-09-06 17:53 UTC (permalink / raw) To: qemu-devel The following changes since commit 227de21ed0759e275a469394af72c999d0134bb5: Merge remote-tracking branch 'remotes/rth/tags/pull-tcg-20200903' into staging (2020-09-05 15:30:41 +0100) are available in the Git repository at: https://gitlab.com/bonzini/qemu.git tags/for-upstream for you to fetch changes up to 6264b35324d3766d3c2ff369c4e8ecba8bd5b571: meson: remove linkage of sdl to baum (2020-09-06 19:50:57 +0200) ---------------------------------------------------------------- meson related: * convert unit tests * bugfixes for mtest2make * miscellaneous bugfixes * dead code removal and configure cleanups * oss-fuzz fixes * msys fixes ---------------------------------------------------------------- Alexander Bulekov (3): oss-fuzz: fix rpath meson: specify fuzz linker script as a project arg fuzz: Add support for custom fuzzing library Bruce Rogers (1): meson: remove linkage of sdl to baum Marc-André Lureau (12): meson: build qapi tests library meson: declare tasn1 dependency meson: declare keyutils dependency meson: convert qht-bench meson: move keyutils dependency check meson: remove old socket_scm_helper rule meson: convert vhost-user-bridge meson: convert atomic*-bench tests: do not print benchmark output to stdout tests/migration/stress: remove unused exit_success meson: fix migration/stress compilation with glibc>=2.30 meson: convert migration/initrd-stress Paolo Bonzini (25): qemu-iotests: move check-block back to Makefiles mtest2make: split environment from test command mtest2make: split working directory from test command mtest2make: hide output of successful tests mtest2make: unify tests that appear in multiple suites meson: remove b_lundef option configure: do not include absolute paths in -I and -L paths configure: include cross sdl2-config in meson cross file ninjatool: use constant names for stamp files meson: fix libqos linking meson: convert the speed tests configure: remove dead code for in-tree builds meson: compute config_all_devices directly Makefile: remove dead variables and includes Makefile: inline the relevant parts of rules.mak configure: move disassembler configuration to meson configure: move C++ compiler handling to meson meson: keep all compiler flags detection together configure: move -ldl test to meson configure: remove unnecessary libm test configure: do not look for install(1) meson: get glib compilation flags from GLIB_CFLAGS configure: do not include dependency flags in QEMU_CFLAGS and LIBS configure: drop dead variables and functions docs: suggest Meson replacements for various configure functions Thomas Huth (2): tests/Makefile: test-image-locking needs CONFIG_POSIX meson: convert the unit tests Yonggang Luo (3): tests: handling signal on win32 properly configure: update dtc submodule meson: Convert undefsym.sh to undefsym.py .gitignore | 2 - Makefile | 63 +++--- Makefile.objs | 34 ---- accel/tcg/meson.build | 2 +- chardev/meson.build | 4 +- configure | 353 ++++----------------------------- disas/meson.build | 4 +- docs/devel/build-system.rst | 18 +- hw/arm/meson.build | 2 +- hw/mips/meson.build | 2 +- hw/riscv/meson.build | 2 +- meson.build | 152 ++++++++++---- monitor/meson.build | 2 +- rules.mak | 158 --------------- scripts/empty.c | 6 + scripts/grepy.sh | 3 - scripts/mtest2make.py | 100 +++++----- scripts/ninjatool.py | 8 +- scripts/oss-fuzz/build.sh | 2 +- scripts/test-driver.py | 35 ++++ scripts/undefsym.py | 49 +++++ scripts/undefsym.sh | 20 -- tests/Makefile.include | 414 ++------------------------------------- tests/benchmark-crypto-cipher.c | 8 +- tests/benchmark-crypto-hash.c | 2 +- tests/benchmark-crypto-hmac.c | 8 +- tests/docker/Makefile.include | 4 + tests/include/meson.build | 16 ++ tests/meson.build | 257 ++++++++++++++++++++++++ tests/migration/initrd-stress.sh | 10 + tests/migration/meson.build | 14 ++ tests/migration/stress.c | 15 +- tests/qemu-iotests/meson.build | 4 - tests/qtest/fuzz/meson.build | 7 +- tests/qtest/libqos/meson.build | 9 +- tests/tcg/Makefile.qemu | 2 - tests/test-crypto-secret.c | 10 +- tests/test-qga.c | 2 +- tests/test-replication.c | 4 + 39 files changed, 686 insertions(+), 1121 deletions(-) delete mode 100644 Makefile.objs delete mode 100644 rules.mak create mode 100644 scripts/empty.c delete mode 100755 scripts/grepy.sh create mode 100644 scripts/test-driver.py create mode 100644 scripts/undefsym.py delete mode 100755 scripts/undefsym.sh create mode 100644 tests/include/meson.build create mode 100755 tests/migration/initrd-stress.sh create mode 100644 tests/migration/meson.build -- 2.26.2 ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PULL v2 00/46] Next round of Meson bugfixes and cleanups 2020-09-06 17:53 Paolo Bonzini @ 2020-09-06 18:34 ` Peter Maydell 2020-09-07 2:56 ` 罗勇刚(Yonggang Luo) 0 siblings, 1 reply; 7+ messages in thread From: Peter Maydell @ 2020-09-06 18:34 UTC (permalink / raw) To: Paolo Bonzini; +Cc: QEMU Developers On Sun, 6 Sep 2020 at 18:56, Paolo Bonzini <pbonzini@redhat.com> wrote: > > The following changes since commit 227de21ed0759e275a469394af72c999d0134bb5: > > Merge remote-tracking branch 'remotes/rth/tags/pull-tcg-20200903' into staging (2020-09-05 15:30:41 +0100) > > are available in the Git repository at: > > https://gitlab.com/bonzini/qemu.git tags/for-upstream > > for you to fetch changes up to 6264b35324d3766d3c2ff369c4e8ecba8bd5b571: > > meson: remove linkage of sdl to baum (2020-09-06 19:50:57 +0200) > > ---------------------------------------------------------------- > meson related: > * convert unit tests > * bugfixes for mtest2make > * miscellaneous bugfixes > * dead code removal and configure cleanups > * oss-fuzz fixes > * msys fixes Build failure, Windows (this is the second "uint" type usage I've seen today...): ../../tests/test-vmstate.c: In function 'int_cmp': ../../tests/test-vmstate.c:884:5: error: unknown type name 'uint' uint ua = GPOINTER_TO_UINT(a); ^ ../../tests/test-vmstate.c:885:5: error: unknown type name 'uint' uint ub = GPOINTER_TO_UINT(b); ^ Makefile.ninja:5443: recipe for target 'tests/test-vmstate.exe.p/test-vmstate.c.obj' failed make: *** [tests/test-vmstate.exe.p/test-vmstate.c.obj] Error 1 make: *** Waiting for unfinished jobs.... ../../tests/test-util-filemonitor.c: In function 'test_file_monitor_events': ../../tests/test-util-filemonitor.c:620:17: error: too many arguments to function 'mkdir' if (mkdir(pathsrc, 0700) < 0) { ^ In file included from /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/include/unistd.h:10:0, from /home/petmay01/qemu-for-merges/include/qemu/osdep.h:93, from ../../tests/test-util-filemonitor.c:21: /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/include/io.h:280:15: note: declared here int __cdecl mkdir (const char *) __MINGW_ATTRIB_DEPRECATED_MSVC2005; ^ Build failure, OpenBSD: In file included from ../src/hw/arm/nseries.c:30: In file included from /home/qemu/qemu-test.yhbDti/src/include/hw/arm/omap.h:24: In file included from /home/qemu/qemu-test.yhbDti/src/include/hw/input/tsc2xxx.h:14: /home/qemu/qemu-test.yhbDti/src/include/ui/console.h:11:11: fatal error: 'epoxy/gl.h' file not found # include <epoxy/gl.h> ^~~~~~~~~~~~ 1 error generated. gmake: *** [Makefile.ninja:1735: libqemu-aarch64-softmmu.fa.p/hw_arm_nseries.c.o] Error 1 Odd warning on most but not all of the builds, though they went on to complete OK: make: Entering directory '/home/peter.maydell/qemu-freebsd/build' /home/peter.maydell/qemu-freebsd/tests/Makefile.include:144: warning: overriding recipe for target 'check-block' Makefile.mtest:1345: warning: ignoring old recipe for target 'check-block' config-host.mak is out-of-date, running configure cross containers no NOTE: guest cross-compilers enabled: aarch64-linux-gnu-gcc cc aarch64-linux-gnu-gcc cc /usr/bin/python3 /home/peter.maydell/qemu-freebsd/meson/meson.py --internal regenerate /home/peter.maydell/qemu-freebsd /home/peter.maydell/qemu-freebsd/build --backend ninja The Meson build system Version: 0.55.1 [etc] x86-64 clang build failed at the link stage (this is config we've talked about before with '../../configure' '--cc=clang' '--cxx=clang++' '--enable-gtk' '--extra-cflags=-fsanitize=undefined -fno-sanitize=shift-base -Werror' but where the clang++ doesn't work because the right libstdc++ happens not to be present): Linking target qemu-alpha libcommon.fa.p/cpus-common.c.o: In function `cpu_list_add': /home/petmay01/linaro/qemu-for-merges/build/clang/../../cpus-common.c:80: undefined reference to `__ubsan_handle_type_mismatch_v1' /home/petmay01/linaro/qemu-for-merges/build/clang/../../cpus-common.c:80: undefined reference to `__ubsan_handle_type_mismatch_v1' libcommon.fa.p/cpus-common.c.o: In function `cpu_get_free_index': /home/petmay01/linaro/qemu-for-merges/build/clang/../../cpus-common.c:68: undefined reference to `__ubsan_handle_type_mismatch_v1' /home/petmay01/linaro/qemu-for-merges/build/clang/../../cpus-common.c:68: undefined reference to `__ubsan_handle_type_mismatch_v1' /home/petmay01/linaro/qemu-for-merges/build/clang/../../cpus-common.c:67: undefined reference to `__ubsan_handle_type_mismatch_v1' libcommon.fa.p/cpus-common.c.o:/home/petmay01/linaro/qemu-for-merges/build/clang/../../cpus-common.c:67: more undefined references to `__ubsan_handle_type_mismatch_v1' follow collect2: error: ld returned 1 exit status thanks -- PMM ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PULL v2 00/46] Next round of Meson bugfixes and cleanups 2020-09-06 18:34 ` Peter Maydell @ 2020-09-07 2:56 ` 罗勇刚(Yonggang Luo) 0 siblings, 0 replies; 7+ messages in thread From: 罗勇刚(Yonggang Luo) @ 2020-09-07 2:56 UTC (permalink / raw) To: Peter Maydell; +Cc: Paolo Bonzini, QEMU Developers [-- Attachment #1: Type: text/plain, Size: 5102 bytes --] On Mon, Sep 7, 2020 at 2:35 AM Peter Maydell <peter.maydell@linaro.org> wrote: > On Sun, 6 Sep 2020 at 18:56, Paolo Bonzini <pbonzini@redhat.com> wrote: > > > > The following changes since commit > 227de21ed0759e275a469394af72c999d0134bb5: > > > > Merge remote-tracking branch 'remotes/rth/tags/pull-tcg-20200903' into > staging (2020-09-05 15:30:41 +0100) > > > > are available in the Git repository at: > > > > https://gitlab.com/bonzini/qemu.git tags/for-upstream > > > > for you to fetch changes up to 6264b35324d3766d3c2ff369c4e8ecba8bd5b571: > > > > meson: remove linkage of sdl to baum (2020-09-06 19:50:57 +0200) > > > > ---------------------------------------------------------------- > > meson related: > > * convert unit tests > > * bugfixes for mtest2make > > * miscellaneous bugfixes > > * dead code removal and configure cleanups > > * oss-fuzz fixes > > * msys fixes > > Build failure, Windows (this is the second "uint" type usage > I've seen today...): > > ../../tests/test-vmstate.c: In function 'int_cmp': > ../../tests/test-vmstate.c:884:5: error: unknown type name 'uint' > uint ua = GPOINTER_TO_UINT(a); > ^ > ../../tests/test-vmstate.c:885:5: error: unknown type name 'uint' > uint ub = GPOINTER_TO_UINT(b); > ^ > I've already fixes this issue, that patch can be quenued > Makefile.ninja:5443: recipe for target > 'tests/test-vmstate.exe.p/test-vmstate.c.obj' failed > make: *** [tests/test-vmstate.exe.p/test-vmstate.c.obj] Error 1 > make: *** Waiting for unfinished jobs.... > ../../tests/test-util-filemonitor.c: In function > 'test_file_monitor_events': > ../../tests/test-util-filemonitor.c:620:17: error: too many arguments > to function 'mkdir' > if (mkdir(pathsrc, 0700) < 0) { > ^ > In file included from > /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/include/unistd.h:10:0, > from > /home/petmay01/qemu-for-merges/include/qemu/osdep.h:93, > from ../../tests/test-util-filemonitor.c:21: > /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/include/io.h:280:15: note: > declared here > int __cdecl mkdir (const char *) __MINGW_ATTRIB_DEPRECATED_MSVC2005; > ^ > > > > Build failure, OpenBSD: > > In file included from ../src/hw/arm/nseries.c:30: > In file included from > /home/qemu/qemu-test.yhbDti/src/include/hw/arm/omap.h:24: > In file included from > /home/qemu/qemu-test.yhbDti/src/include/hw/input/tsc2xxx.h:14: > /home/qemu/qemu-test.yhbDti/src/include/ui/console.h:11:11: fatal > error: 'epoxy/gl.h' file not found > # include <epoxy/gl.h> > ^~~~~~~~~~~~ > 1 error generated. > gmake: *** [Makefile.ninja:1735: > libqemu-aarch64-softmmu.fa.p/hw_arm_nseries.c.o] Error 1 > > > > Odd warning on most but not all of the builds, though they went on to > complete OK: > > make: Entering directory '/home/peter.maydell/qemu-freebsd/build' > /home/peter.maydell/qemu-freebsd/tests/Makefile.include:144: warning: > overriding recipe for target 'check-block' > Makefile.mtest:1345: warning: ignoring old recipe for target 'check-block' > config-host.mak is out-of-date, running configure > cross containers no > > NOTE: guest cross-compilers enabled: aarch64-linux-gnu-gcc cc > aarch64-linux-gnu-gcc cc > /usr/bin/python3 /home/peter.maydell/qemu-freebsd/meson/meson.py > --internal regenerate /home/peter.maydell/qemu-freebsd > /home/peter.maydell/qemu-freebsd/build --backend ninja > The Meson build system > Version: 0.55.1 > [etc] > > > x86-64 clang build failed at the link stage (this is config we've > talked about before with > '../../configure' '--cc=clang' '--cxx=clang++' '--enable-gtk' > '--extra-cflags=-fsanitize=undefined -fno-sanitize=shift-base > -Werror' > but where the clang++ doesn't work because the right libstdc++ happens > not to be present): > > Linking target qemu-alpha > libcommon.fa.p/cpus-common.c.o: In function `cpu_list_add': > /home/petmay01/linaro/qemu-for-merges/build/clang/../../cpus-common.c:80: > undefined reference to `__ubsan_handle_type_mismatch_v1' > /home/petmay01/linaro/qemu-for-merges/build/clang/../../cpus-common.c:80: > undefined reference to `__ubsan_handle_type_mismatch_v1' > libcommon.fa.p/cpus-common.c.o: In function `cpu_get_free_index': > /home/petmay01/linaro/qemu-for-merges/build/clang/../../cpus-common.c:68: > undefined reference to `__ubsan_handle_type_mismatch_v1' > /home/petmay01/linaro/qemu-for-merges/build/clang/../../cpus-common.c:68: > undefined reference to `__ubsan_handle_type_mismatch_v1' > /home/petmay01/linaro/qemu-for-merges/build/clang/../../cpus-common.c:67: > undefined reference to `__ubsan_handle_type_mismatch_v1' > > libcommon.fa.p/cpus-common.c.o:/home/petmay01/linaro/qemu-for-merges/build/clang/../../cpus-common.c:67: > more undefined references to `__ubsan_handle_type_mismatch_v1' follow > collect2: error: ld returned 1 exit status > > thanks > -- PMM > > -- 此致 礼 罗勇刚 Yours sincerely, Yonggang Luo [-- Attachment #2: Type: text/html, Size: 6348 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2020-09-07 20:51 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2020-09-07 16:44 [PULL v2 00/46] Next round of Meson bugfixes and cleanups Paolo Bonzini 2020-09-07 16:44 ` [PULL 37/46] meson: get opengl compilation flags from OPENGL_CFLAGS Paolo Bonzini 2020-09-07 16:44 ` [PULL 38/46] configure: do not include dependency flags in QEMU_CFLAGS and LIBS Paolo Bonzini 2020-09-07 20:49 ` [PULL v2 00/46] Next round of Meson bugfixes and cleanups Peter Maydell -- strict thread matches above, loose matches on Subject: below -- 2020-09-06 17:53 Paolo Bonzini 2020-09-06 18:34 ` Peter Maydell 2020-09-07 2:56 ` 罗勇刚(Yonggang Luo)
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).