On Wed, Oct 27, 2021 at 4:34 AM Michael S. Tsirkin <m...@redhat.com> wrote: > > On Wed, Oct 27, 2021 at 03:45:42AM -0400, Igor Mammedov wrote: > > If KVM is disabled or not present, qtest library build > > may fail with: > > libqtest.c: In function 'qtest_has_accel': > > comparison of unsigned expression < 0 is always false > > [-Werror=type-limits] > > for (i = 0; i < ARRAY_SIZE(targets); i++) { > > > > due to empty 'targets' array. > > Fix it by compiling KVM related part only if > > CONFIG_KVM_TARGETS is set. > > > > Fixes: e741aff0f43343 ("tests: qtest: add qtest_has_accel() to check if > > tested binary supports accelerator") > > Reported-by: Jason Andryuk <jandr...@gmail.com> > > Signed-off-by: Igor Mammedov <imamm...@redhat.com> > > > > --- > > tests/qtest/libqtest.c | 4 ++++ > > 1 file changed, 4 insertions(+) > > > > diff --git a/tests/qtest/libqtest.c b/tests/qtest/libqtest.c > > index 25aeea385b..9833e16f84 100644 > > --- a/tests/qtest/libqtest.c > > +++ b/tests/qtest/libqtest.c > > @@ -931,6 +931,7 @@ bool qtest_has_accel(const char *accel_name) > > return false; > > #endif > > } else if (g_str_equal(accel_name, "kvm")) { > > +#if defined(CONFIG_KVM_TARGETS) > > Ugh. > const char *targets[] = { CONFIG_KVM_TARGETS }; > > are you use CONFIG_KVM_TARGETS is not defined? > > Looks like it's defined, just empty. > > which is not standard C BTW. > > How about we just add an empty string in meson? > > diff --git a/meson.build b/meson.build > index 2c5b53cbe2..ff85e9c2af 100644 > --- a/meson.build > +++ b/meson.build > @@ -75,7 +75,7 @@ else > kvm_targets = [] > endif > > -kvm_targets_c = '' > +kvm_targets_c = '""' > if not get_option('kvm').disabled() and targetos == 'linux' > kvm_targets_c = '"' + '" ,"'.join(kvm_targets) + '"' > endif
This allows Debian buster (gcc 8.3.0) to compile. Thanks, Jason