On 17 October 2018 at 20:05, Cleber Rosa <cr...@redhat.com> wrote: > > > On 10/17/18 2:40 PM, Peter Maydell wrote: >> At that level, I think the right answer is "tell the user >> they need to specify the qemu executable they are trying to test". >> In particular, there is no guarantee that the user has actually >> built the executable for the target that corresponds to the >> host, so it doesn't work to try to default to that anyway. >> > > I think your "right answer" is the ideal, but I'm afraid it's not > practical. For instance, look at how a qemu-iotest is run: > > $ ./check 001 > QEMU -- > "/tmp/qemu-build/tests/qemu-iotests/../../ppc64-softmmu/qemu-system-ppc64" > -nodefaults -machine accel=qtest > ...
I don't know how the iotests stuff works (they're odd and not part of the stock "make check"), but the main tests/Makefile.include handles tests which run for any QEMU binary, tests which run only on certain target architectures, and tests which don't use a QEMU binary and just run once. > The rules that "check" uses for finding a "default" QEMU binary are a > lot harder to describe (are "smarter") than the ones we currently have > on the acceptance tests. IMO some compromises like these are necessary, > or else, tests may be run much much less than they could and should. I'm not sure what that check script is trying to do, but my first impression is that it's probably not a good model to follow. thanks -- PMM