On Thu, May 05, 2022 at 09:14:57AM +0100, Daniel P. Berrangé wrote:
On Thu, May 05, 2022 at 09:48:41AM +0200, Thomas Huth wrote:
Our support statement for Windows currently talks about "Vista / Server
2008" - which is related to the API of Windows, and this is not easy
to understand for the non-technical users. It might also not be quite
true anymore, since we only compile-test QEMU with recent toolchains.
We documented Vista / Server 2008 because that is what our code is
declaring it wants in terms of Windows public APIs:
In osdep.h we have:
#ifdef _WIN32
/* as defined in sdkddkver.h */
#ifndef _WIN32_WINNT
#define _WIN32_WINNT 0x0600 /* Vista */
#endif
which tells Mingw / MSys not to expose windows header file declarations
that post-date Vista.
Of course we rely on 3rd party libraries and in particular GLib2 is
mandatory, and it also set _WIN32_WINNT. So our constraint is the
newer of the _WIN32_WINNT constraint set by QEMU and whatever version
of GLib2 being compiled against.
QEMU sets a min GLib of 2.56, and that version of GLib sets 0x0601
which means Windows >= 7. So even though QEMU only asks for Vista,
in practice our minimum is 7.