[libvirt PATCH] tests: fix compiling tests with minGW

Michal Prívozník mprivozn at redhat.com
Thu Jul 22 12:54:57 UTC 2021


On 7/22/21 12:24 PM, Pavel Hrdina wrote:
> We need to mock virQEMUCapsGetKVMSupportsSecureGuest only if compiling
> with QEMU otherwise compilation will fail with error:
> 
> /usr/lib/gcc/i686-w64-mingw32/11.1.1/../../../../i686-w64-mingw32/bin/ld: tests/libdomaincapsmock.dll.p/domaincapsmock.c.obj: in function `virQEMUCapsGetKVMSupportsSecureGuest':
> /builds/libvirt/libvirt/build/../tests/domaincapsmock.c:40: undefined reference to `virQEMUCapsGet'
> /usr/lib/gcc/i686-w64-mingw32/11.1.1/../../../../i686-w64-mingw32/bin/ld: /builds/libvirt/libvirt/build/../tests/domaincapsmock.c:41: undefined reference to `virQEMUCapsGet'
> 
> Fixes: 248a30c0c0ec2610e8fa2bbbc98da6d06978ad2e
> Signed-off-by: Pavel Hrdina <phrdina at redhat.com>
> ---
>  tests/domaincapsmock.c | 9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/tests/domaincapsmock.c b/tests/domaincapsmock.c
> index 7b02c0e890..0a6c541f77 100644
> --- a/tests/domaincapsmock.c
> +++ b/tests/domaincapsmock.c
> @@ -17,8 +17,11 @@
>  #include <config.h>
>  
>  #include "virhostcpu.h"
> -#include "virmock.h"
> -#include "qemu/qemu_capabilities.h"
> +
> +#if WITH_QEMU
> +# include "virmock.h"
> +# include "qemu/qemu_capabilities.h"
> +#endif
>  
>  int
>  virHostCPUGetKVMMaxVCPUs(void)
> @@ -32,6 +35,7 @@ virHostCPUGetMicrocodeVersion(virArch hostArch G_GNUC_UNUSED)
>      return 0;
>  }
>  
> +#if WITH_QEMU
>  static bool (*real_virQEMUCapsGetKVMSupportsSecureGuest)(virQEMUCaps *qemuCaps);
>  
>  bool
> @@ -46,3 +50,4 @@ virQEMUCapsGetKVMSupportsSecureGuest(virQEMUCaps *qemuCaps)
>  
>      return real_virQEMUCapsGetKVMSupportsSecureGuest(qemuCaps);
>  }
> +#endif
> 

Reviewed-by: Michal Privoznik <mprivozn at redhat.com>

However, this same code you're wrapping is in qemuxml2argvmock and I
don't see much reason for that since qemuxml2argtest loads
domaincapsmock too.

Michal




More information about the libvir-list mailing list