On Wed, Sep 02, 2020 at 04:00:46AM -0400, Paolo Bonzini wrote: > check-block has its own test harness, unlike every other test. If > we capture its output, as is in general nicer to do without V=1, > there will be no sign of progress. So for lack of a better option > just move the invocation of the test back to Makefile rules.
I expect the correct long term solution here is to stop using the check-block.sh script. Instead have code which sets up each of the I/O tests as an explicit test target in meson. We could use meson's test grouping features too. > > As a side effect, this will also fix "make check" in --disable-tools > builds, as they were trying to run qemu-iotests without having > made qemu-img before. > > Signed-off-by: Paolo Bonzini <[email protected]> > --- > meson.build | 2 -- > tests/Makefile.include | 15 ++++++++++++--- > tests/qemu-iotests/meson.build | 4 ---- > 3 files changed, 12 insertions(+), 9 deletions(-) > > diff --git a/meson.build b/meson.build > index 55c7d2318c..356af9142c 100644 > --- a/meson.build > +++ b/meson.build > @@ -1095,11 +1095,9 @@ if have_tools > dependencies: [authz, block, crypto, io, qom, qemuutil], > install: true) > qemu_io = executable('qemu-io', files('qemu-io.c'), > dependencies: [block, qemuutil], install: true) > - qemu_block_tools += [qemu_img, qemu_io] > if targetos != 'windows' > qemu_nbd = executable('qemu-nbd', files('qemu-nbd.c'), > dependencies: [block, qemuutil], install: true) > - qemu_block_tools += [qemu_nbd] > endif > > subdir('storage-daemon') > diff --git a/tests/Makefile.include b/tests/Makefile.include > index 9ac8f5b86a..08301f5bc9 100644 > --- a/tests/Makefile.include > +++ b/tests/Makefile.include > @@ -468,7 +468,6 @@ check-tcg: $(RUN_TCG_TARGET_RULES) > .PHONY: clean-tcg > clean-tcg: $(CLEAN_TCG_TARGET_RULES) > > - > # Python venv for running tests > > .PHONY: check-venv check-acceptance > @@ -523,8 +522,18 @@ check-acceptance: check-venv $(TESTS_RESULTS_DIR) > get-vm-images > # Consolidated targets > > .PHONY: check-block check-unit check check-clean get-vm-images > -check-block: > -check-build: build-unit > +check: > + > +ifeq ($(CONFIG_TOOLS)$(CONFIG_POSIX),yy) > +QEMU_IOTESTS_HELPERS-$(CONFIG_LINUX) = > tests/qemu-iotests/socket_scm_helper$(EXESUF) > +check: check-block > +check-block: $(SRC_PATH)/tests/check-block.sh qemu-img$(EXESUF) \ > + qemu-io$(EXESUF) qemu-nbd$(EXESUF) $(QEMU_IOTESTS_HELPERS-y) \ > + $(patsubst %-softmmu,qemu-system-%,$(filter > %-softmmu,$(TARGET_DIRS))) > + @$< > +endif > + > +check-build: build-unit $(QEMU_IOTESTS_HELPERS-y) > > check-clean: > rm -rf $(check-unit-y) tests/*.o tests/*/*.o $(QEMU_IOTESTS_HELPERS-y) > diff --git a/tests/qemu-iotests/meson.build b/tests/qemu-iotests/meson.build > index 3de09fb8fa..60470936b4 100644 > --- a/tests/qemu-iotests/meson.build > +++ b/tests/qemu-iotests/meson.build > @@ -4,7 +4,3 @@ if 'CONFIG_LINUX' in config_host > else > socket_scm_helper = [] > endif > -test('qemu-iotests', sh, args: [files('../check-block.sh')], > - depends: [qemu_block_tools, emulators, socket_scm_helper], > - suite: 'block', timeout: 10000) > - > -- > 2.26.2 > > Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
