--- /dev/null
+From 34f7fa22022bed9e0e390ed3580a1c83ac4a2834 Mon Sep 17 00:00:00 2001
+Date: Mon, 30 Dec 2024 11:01:39 +0000
+Subject: [PATCH] cmake_minimum_required() before project()
+
+ * Without this CMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded (MT) Windows builds still produced incompatible MultiThreadedDLL (MD) output.
+
+ * Resolves following warning:
+
+CMake Warning (dev) at CMakeLists.txt:2 (project):
+ cmake_minimum_required() should be called prior to this top-level project()
+ call.
+
+ * Use ${CMAKE_HOST_SYSTEM_NAME} as ${CMAKE_SYSTEM_NAME} not set before project().
+---
+ CMakeLists.txt | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,12 +1,13 @@
+ # CMake build script for ZeroMQ
+-project(ZeroMQ)
+
+-if(${CMAKE_SYSTEM_NAME} STREQUAL Darwin)
++if(${CMAKE_HOST_SYSTEM_NAME} STREQUAL Darwin)
+ cmake_minimum_required(VERSION 3.0.2)
+ else()
+ cmake_minimum_required(VERSION 2.8.12)
+ endif()
+
++project(ZeroMQ)
++
+ include(CheckIncludeFiles)
+ include(CheckCCompilerFlag)
+ include(CheckCXXCompilerFlag)
--- /dev/null
+From b91a6201307b72beb522300366aad763d19b1456 Mon Sep 17 00:00:00 2001
+Date: Thu, 20 Mar 2025 14:51:18 +0100
+Subject: [PATCH] set upper bound in cmake_minimum_required
+
+setting an upper bound improves forward-compatibility as legacy version support is dropped
+
+- 3.5 compat is deprecated in 3.27 (2023), removed in 4.0 (2025)
+- 3.10 compat is deprecated in 3.31 (2024)
+---
+ CMakeLists.txt | 4 ++--
+ tests/CMakeLists.txt | 2 +-
+ unittests/CMakeLists.txt | 2 +-
+ 3 files changed, 4 insertions(+), 4 deletions(-)
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,9 +1,9 @@
+ # CMake build script for ZeroMQ
+
+ if(${CMAKE_HOST_SYSTEM_NAME} STREQUAL Darwin)
+- cmake_minimum_required(VERSION 3.0.2)
++ cmake_minimum_required(VERSION 3.0.2...3.31)
+ else()
+- cmake_minimum_required(VERSION 2.8.12)
++ cmake_minimum_required(VERSION 2.8.12...3.31)
+ endif()
+
+ project(ZeroMQ)
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -1,5 +1,5 @@
+ # CMake build script for ZeroMQ tests
+-cmake_minimum_required(VERSION "2.8.1")
++cmake_minimum_required(VERSION 2.8.1...3.31)
+
+ # On Windows: solution file will be called tests.sln
+ project(tests)
+--- a/unittests/CMakeLists.txt
++++ b/unittests/CMakeLists.txt
+@@ -1,5 +1,5 @@
+ # CMake build script for ZeroMQ unit tests
+-cmake_minimum_required(VERSION "2.8.1")
++cmake_minimum_required(VERSION 2.8.1...3.31)
+
+ set(unittests
+ unittest_ypipe