diff mbox series

[v2] docs/about: Update the support statement for Windows

Message ID 20220512073929.988220-1-thuth@redhat.com
State New
Headers show
Series [v2] docs/about: Update the support statement for Windows | expand

Commit Message

Thomas Huth May 12, 2022, 7:39 a.m. UTC
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. Additionally, glib sets the
_WIN32_WINNT macro to 0x0601 already, which indicates the Windows 7 API,
so QEMU effectively depends on the Windows 7 API, too.

Thus let's bump the _WIN32_WINNT setting in QEMU to the same level as
glib uses and adjust our support statement in the documentation to
something similar that we're using for Linux and the *BSD systems
(i.e. only the two most recent versions), which should hopefully be
easier to understand for the users now.

And since we're nowadays also compile-testing QEMU with MSYS2 on Windows
itself, I think we could mention this build environment here, too.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/880
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 v2: Rephrase and update the _WIN32_WINNT macro, too

 docs/about/build-platforms.rst | 14 +++++++++-----
 include/qemu/osdep.h           |  2 +-
 2 files changed, 10 insertions(+), 6 deletions(-)

Comments

Daniel P. Berrangé May 12, 2022, 8:37 a.m. UTC | #1
On Thu, May 12, 2022 at 09:39:29AM +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. Additionally, glib sets the
> _WIN32_WINNT macro to 0x0601 already, which indicates the Windows 7 API,
> so QEMU effectively depends on the Windows 7 API, too.
> 
> Thus let's bump the _WIN32_WINNT setting in QEMU to the same level as
> glib uses and adjust our support statement in the documentation to
> something similar that we're using for Linux and the *BSD systems
> (i.e. only the two most recent versions), which should hopefully be
> easier to understand for the users now.
> 
> And since we're nowadays also compile-testing QEMU with MSYS2 on Windows
> itself, I think we could mention this build environment here, too.
> 
> Resolves: https://gitlab.com/qemu-project/qemu/-/issues/880
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>  v2: Rephrase and update the _WIN32_WINNT macro, too
> 
>  docs/about/build-platforms.rst | 14 +++++++++-----
>  include/qemu/osdep.h           |  2 +-
>  2 files changed, 10 insertions(+), 6 deletions(-)
> 
> diff --git a/docs/about/build-platforms.rst b/docs/about/build-platforms.rst
> index e9163ba556..1958edb430 100644
> --- a/docs/about/build-platforms.rst
> +++ b/docs/about/build-platforms.rst
> @@ -86,11 +86,15 @@ similar versions.
>  Windows
>  -------
>  
> -The project supports building with current versions of the MinGW toolchain,
> -hosted on Linux (Debian/Fedora).
> -
> -The version of the Windows API that's currently targeted is Vista / Server
> -2008.
> +The project aims to support the two most recent versions of Windows that are
> +still supported by the vendor. The minimum Windows API that is currently
> +targeted is "Windows 7", so theoretically the QEMU binaries can still be run
> +on older versions of Windows, too. However, such old versions of Windows are
> +not tested anymore, so it is recommended to use one of the latest versions of
> +Windows instead.
> +
> +The project supports building QEMU with current versions of the MinGW
> +toolchain, either hosted on Linux (Debian/Fedora) or via MSYS2 on Windows.
>  
>  .. _Homebrew: https://brew.sh/
>  .. _MacPorts: https://www.macports.org/
> diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h
> index 1c1e7eca98..e2f88597b6 100644
> --- a/include/qemu/osdep.h
> +++ b/include/qemu/osdep.h
> @@ -75,7 +75,7 @@ QEMU_EXTERN_C int daemon(int, int);
>  #ifdef _WIN32
>  /* as defined in sdkddkver.h */
>  #ifndef _WIN32_WINNT
> -#define _WIN32_WINNT 0x0600 /* Vista */
> +#define _WIN32_WINNT 0x0601 /* Windows 7 API */
>  #endif
>  /* reduces the number of implicitly included headers */
>  #ifndef WIN32_LEAN_AND_MEAN

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>

but how about also adding a comment before 'glib_req_ver' in
configure reminding us to bump _WIN32_WINNT, and adding a
comment here reminding us to set this to match the _WIN32_WINNT
in our min glib ?


With regards,
Daniel
Thomas Huth May 12, 2022, 2:30 p.m. UTC | #2
On 12/05/2022 10.37, Daniel P. Berrangé wrote:
> On Thu, May 12, 2022 at 09:39:29AM +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. Additionally, glib sets the
>> _WIN32_WINNT macro to 0x0601 already, which indicates the Windows 7 API,
>> so QEMU effectively depends on the Windows 7 API, too.
>>
>> Thus let's bump the _WIN32_WINNT setting in QEMU to the same level as
>> glib uses and adjust our support statement in the documentation to
>> something similar that we're using for Linux and the *BSD systems
>> (i.e. only the two most recent versions), which should hopefully be
>> easier to understand for the users now.
>>
>> And since we're nowadays also compile-testing QEMU with MSYS2 on Windows
>> itself, I think we could mention this build environment here, too.
>>
>> Resolves: https://gitlab.com/qemu-project/qemu/-/issues/880
>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>> ---
>>   v2: Rephrase and update the _WIN32_WINNT macro, too
>>
>>   docs/about/build-platforms.rst | 14 +++++++++-----
>>   include/qemu/osdep.h           |  2 +-
>>   2 files changed, 10 insertions(+), 6 deletions(-)
>>
>> diff --git a/docs/about/build-platforms.rst b/docs/about/build-platforms.rst
>> index e9163ba556..1958edb430 100644
>> --- a/docs/about/build-platforms.rst
>> +++ b/docs/about/build-platforms.rst
>> @@ -86,11 +86,15 @@ similar versions.
>>   Windows
>>   -------
>>   
>> -The project supports building with current versions of the MinGW toolchain,
>> -hosted on Linux (Debian/Fedora).
>> -
>> -The version of the Windows API that's currently targeted is Vista / Server
>> -2008.
>> +The project aims to support the two most recent versions of Windows that are
>> +still supported by the vendor. The minimum Windows API that is currently
>> +targeted is "Windows 7", so theoretically the QEMU binaries can still be run
>> +on older versions of Windows, too. However, such old versions of Windows are
>> +not tested anymore, so it is recommended to use one of the latest versions of
>> +Windows instead.
>> +
>> +The project supports building QEMU with current versions of the MinGW
>> +toolchain, either hosted on Linux (Debian/Fedora) or via MSYS2 on Windows.
>>   
>>   .. _Homebrew: https://brew.sh/
>>   .. _MacPorts: https://www.macports.org/
>> diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h
>> index 1c1e7eca98..e2f88597b6 100644
>> --- a/include/qemu/osdep.h
>> +++ b/include/qemu/osdep.h
>> @@ -75,7 +75,7 @@ QEMU_EXTERN_C int daemon(int, int);
>>   #ifdef _WIN32
>>   /* as defined in sdkddkver.h */
>>   #ifndef _WIN32_WINNT
>> -#define _WIN32_WINNT 0x0600 /* Vista */
>> +#define _WIN32_WINNT 0x0601 /* Windows 7 API */
>>   #endif
>>   /* reduces the number of implicitly included headers */
>>   #ifndef WIN32_LEAN_AND_MEAN
> 
> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
> 
> but how about also adding a comment before 'glib_req_ver' in
> configure reminding us to bump _WIN32_WINNT and adding a
> comment here reminding us to set this to match the _WIN32_WINNT
> in our min glib ?

Can do. Will send a v3.

  Thomas
diff mbox series

Patch

diff --git a/docs/about/build-platforms.rst b/docs/about/build-platforms.rst
index e9163ba556..1958edb430 100644
--- a/docs/about/build-platforms.rst
+++ b/docs/about/build-platforms.rst
@@ -86,11 +86,15 @@  similar versions.
 Windows
 -------
 
-The project supports building with current versions of the MinGW toolchain,
-hosted on Linux (Debian/Fedora).
-
-The version of the Windows API that's currently targeted is Vista / Server
-2008.
+The project aims to support the two most recent versions of Windows that are
+still supported by the vendor. The minimum Windows API that is currently
+targeted is "Windows 7", so theoretically the QEMU binaries can still be run
+on older versions of Windows, too. However, such old versions of Windows are
+not tested anymore, so it is recommended to use one of the latest versions of
+Windows instead.
+
+The project supports building QEMU with current versions of the MinGW
+toolchain, either hosted on Linux (Debian/Fedora) or via MSYS2 on Windows.
 
 .. _Homebrew: https://brew.sh/
 .. _MacPorts: https://www.macports.org/
diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h
index 1c1e7eca98..e2f88597b6 100644
--- a/include/qemu/osdep.h
+++ b/include/qemu/osdep.h
@@ -75,7 +75,7 @@  QEMU_EXTERN_C int daemon(int, int);
 #ifdef _WIN32
 /* as defined in sdkddkver.h */
 #ifndef _WIN32_WINNT
-#define _WIN32_WINNT 0x0600 /* Vista */
+#define _WIN32_WINNT 0x0601 /* Windows 7 API */
 #endif
 /* reduces the number of implicitly included headers */
 #ifndef WIN32_LEAN_AND_MEAN