Browse Source

ci: Require Windows 10 in official precompiled binaries

See Windows SDK docs [1] on API selection via preprocessor definitions.

[1] https://learn.microsoft.com/en-us/cpp/porting/modifying-winver-and-win32-winnt

Closes: #27450
Brad King 3 months ago
parent
commit
d54e15a5b8

+ 1 - 1
.gitlab/ci/configure_windows_arm64_package.cmake

@@ -4,7 +4,7 @@ set(CPACK_SYSTEM_NAME "windows-arm64" CACHE STRING "")
 # Tell WiX to package for this architecture.
 set(CPACK_WIX_ARCHITECTURE "arm64" CACHE STRING "")
 
-# Use APIs from at most Windows 7
+# Use APIs from at most Windows 10
 set(CMAKE_C_FLAGS "-D_WIN32_WINNT=0x0A00 -DNTDDI_VERSION=0x0A000008" CACHE STRING "")
 set(CMAKE_CXX_FLAGS "-GR -EHsc -D_WIN32_WINNT=0x0A00 -DNTDDI_VERSION=0x0A000008" CACHE STRING "")
 set(CMAKE_EXE_LINKER_FLAGS "-machine:arm64 -subsystem:console,6.02" CACHE STRING "")

+ 4 - 4
.gitlab/ci/configure_windows_i386_package.cmake

@@ -4,10 +4,10 @@ set(CPACK_SYSTEM_NAME "windows-i386" CACHE STRING "")
 # Tell WiX to package for this architecture.
 set(CPACK_WIX_ARCHITECTURE "x86" CACHE STRING "")
 
-# Use APIs from at most Windows 7
-set(CMAKE_C_FLAGS "-D_WIN32_WINNT=0x601 -DNTDDI_VERSION=0x06010000" CACHE STRING "")
-set(CMAKE_CXX_FLAGS "-GR -EHsc -D_WIN32_WINNT=0x601 -DNTDDI_VERSION=0x06010000" CACHE STRING "")
-set(CMAKE_EXE_LINKER_FLAGS "-machine:x86 -subsystem:console,6.01" CACHE STRING "")
+# Use APIs from at most Windows 10
+set(CMAKE_C_FLAGS "-D_WIN32_WINNT=0x0A00 -DNTDDI_VERSION=0x0A000000" CACHE STRING "")
+set(CMAKE_CXX_FLAGS "-GR -EHsc -D_WIN32_WINNT=0x0A00 -DNTDDI_VERSION=0x0A000000" CACHE STRING "")
+set(CMAKE_EXE_LINKER_FLAGS "-machine:x86 -subsystem:console,6.02" CACHE STRING "")
 
 include("${CMAKE_CURRENT_LIST_DIR}/configure_windows_package_common_x86.cmake")
 include("${CMAKE_CURRENT_LIST_DIR}/configure_windows_package_common.cmake")

+ 4 - 4
.gitlab/ci/configure_windows_x86_64_package.cmake

@@ -4,10 +4,10 @@ set(CPACK_SYSTEM_NAME "windows-x86_64" CACHE STRING "")
 # Tell WiX to package for this architecture.
 set(CPACK_WIX_ARCHITECTURE "x64" CACHE STRING "")
 
-# Use APIs from at most Windows 7
-set(CMAKE_C_FLAGS "-D_WIN32_WINNT=0x601 -DNTDDI_VERSION=0x06010000" CACHE STRING "")
-set(CMAKE_CXX_FLAGS "-GR -EHsc -D_WIN32_WINNT=0x601 -DNTDDI_VERSION=0x06010000" CACHE STRING "")
-set(CMAKE_EXE_LINKER_FLAGS "-machine:x64 -subsystem:console,6.01" CACHE STRING "")
+# Use APIs from at most Windows 10
+set(CMAKE_C_FLAGS "-D_WIN32_WINNT=0x0A00 -DNTDDI_VERSION=0x0A000000" CACHE STRING "")
+set(CMAKE_CXX_FLAGS "-GR -EHsc -D_WIN32_WINNT=0x0A00 -DNTDDI_VERSION=0x0A000000" CACHE STRING "")
+set(CMAKE_EXE_LINKER_FLAGS "-machine:x64 -subsystem:console,6.02" CACHE STRING "")
 
 include("${CMAKE_CURRENT_LIST_DIR}/configure_windows_package_common_x86.cmake")
 include("${CMAKE_CURRENT_LIST_DIR}/configure_windows_package_common.cmake")

+ 5 - 0
Help/release/dev/ci-package-windows-10.rst

@@ -0,0 +1,5 @@
+ci-package-windows-10
+---------------------
+
+* The precompiled Windows binaries provided on
+  `cmake.org <https://cmake.org/download/>`_ now require Windows 10 or higher.