Make Windows 10 the minimal runtime requirement for WIN32
authorMichael Paquier
Thu, 7 Jul 2022 04:25:45 +0000 (13:25 +0900)
committerMichael Paquier
Thu, 7 Jul 2022 04:25:45 +0000 (13:25 +0900)
This commit bumps the runtime value of _WIN32_WINNT to be 0x0A00 for any
builds on Windows.  Hence, this makes Windows 10 the minimal requirement
when running PostgreSQL under WIN32, be it for builds of Cygwin, MinGW
or Visual Studio.

The previous minimal runtime version was either Windows Vista when
building with at least Visual Studio 2015 or Windows XP for the rest.

Windows 10 is the most modern version supported by Microsoft, and per
discussion, as we don't have buildfarm members that run older versions
anymore, this is the minimal supported version that suits better for our
needs.  This will actually make easier the development of some patches,
two being async I/O and large page handling by avoiding a lot of
compatibility gotchas, on platforms that have most likely few users
anyway.

It is possible to remove MIN_WINNT in win32.h and the macros
IsWindowsXXXOrGreater() that were used in the code at runtime to check
which version of Windows was getting used.  The change in pg_locale.c
comes from Juan.  Note that all my tests passed, and that the CI is
green.  The buildfarm will quickly tell if this needs more adjustments.

Author: Michael Paquier, Juan José Santamaría Flecha
Reviewed-by: Thomas Munro
Discussion: https://postgr.es/m/[email protected]

doc/src/sgml/install-windows.sgml
doc/src/sgml/installation.sgml
src/backend/main/main.c
src/backend/utils/adt/pg_locale.c
src/bin/pg_ctl/pg_ctl.c
src/include/port/win32.h

index bcfd5a1a106e5404052df03c11ab3285b4142e2e..66567d17a0455b6f992142c3b04b393bcc314443 100644 (file)
   as well as standalone Windows SDK releases 8.1a to 10.
   64-bit PostgreSQL builds are supported with
   Microsoft Windows SDK version 8.1a to 10 or
-  Visual Studio 2013 and above. Compilation
-  is supported down to Windows 7 and
-  Windows Server 2008 R2 SP1 when building with
-  Visual Studio 2013 to
-  Visual Studio 2022.
+  Visual Studio 2013 and above.