Currently we test for qemu-img, socat, ss, certtool, etc at run time,
but we test for qemu-io at compile time (in ./configure). This commit
removes this inconsistency.
I would consider the opposite patch (which makes qemu-img etc tested
at configure time).
The main advantage of testing for these binaries at run time is that
tests are not "silently" omitted. Instead tests with insufficient
dependencies are now reported as ‘SKIP’, which I think gives packagers
a better overview of their coverage of the test suite.
I recently changed the Fedora build so we run the test suite on every
architecture, and it's interesting that x86_64 is now running and
passing 40 tests, but some architectures (s390x for instance) only
manage 17 passes with the rest being skipped for multiple reasons.
Disadvantages:
- Can't override the location of these binaries eg by setting
QEMU_IO=/opt/qemu/bin/qemu-io ./configure
- ./configure doesn't report missing soft dependencies.
There are also other test dependencies that we test at compile time
but we cannot change that (guestfish, libguestfs).
Rich.